Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        2年前关闭。
                                                                                            
                
        
我的问题是关于如何使函数在不区分大小写的情况下比较字符串,而无需在C中使用strcmpi()

最佳答案

只需实现自己的:

#define TO_LOWER(c) ((c >= 'A' && c <= 'Z') ? c - 'A' + 'a' : c)

int my_strcmpi(char* str1, char* str2) {
    while (*str1 && *str2 && TO_LOWER(*str1) == TO_LOWER(*str2))
    {
        str1++;
        str2++;
    }
    return TO_LOWER(*str1) - TO_LOWER(*str2);
}

关于c - 如何使函数比较不区分大小写,不带strcmpi()的字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51962397/

10-10 22:55