OC strcmp函数和@encode的使用

 strcmp(<#const char *__s1#>, <#const char *__s2#>)

            strcmp作用比较两个字符是否相同

比较两个字符串的方法:

        1:isEqualToString方法:判断字符串是否相等

        2:compare方法

            >NSOrderedSame 判断两者内容是否相同

            >NSOrderedAscending 判断两对象值的大小(按字母顺序进行比较,A大于B为真)

            >NSOrderedDescending 判断两对象值的大小(按字母顺序进行比较,A小于B为真)

@encode(Type)

            @encode() 作用:用来判断类型,常和strcmp(ObjCType, @encode(Type))合用。@encode(Type) 可以返回该类型的 C 字符串(char *)的表示。举例如下:

               判断方法返回的值是不是void 类型的

               NSMethodSignature* methodSig = [targetmethodSignatureForSelector:action];

                             if(methodSig ==nil) {

                            returnnil;

                            }

                将方法的返回值转成char *类型表示  

                const char* retType = [methodSigmethodReturnType];

                @encode(void):返回类型为void的字符

                if(strcmp(retType,@encode(void)) ==0) {//判断这两个字符是否相等

                }

你可能感兴趣的:(OC strcmp函数和@encode的使用)