我一直在Internet上以及每个具有string.h功能的地方都在寻找它,而这两个都没有提到。
是因为什么?它们不是在每个编译器中吗?
最佳答案
它们是Microsoft C库中的非标准函数。从那以后,MS已弃用它们,而支持重命名的函数_strlwr()
和_strupr()
:
strlwr()
doc strupr()
doc 请注意,MS文档声称它们是POSIX函数,但据我所知它们从未如此。
如果您需要在非MS工具链上使用它们,那么它们很容易实现。
char* strlwr(char* s)
{
char* tmp = s;
for (;*tmp;++tmp) {
*tmp = tolower((unsigned char) *tmp);
}
return s;
}
关于c - string.h中的strupr()和strlwr()是ANSI标准的一部分吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26327812/