c++ - strcmpi 重命名为 _strcmpi?

标签 c++ c string strcmp

在 MSVC++ 中,有一个函数 strcmpi用于不区分大小写的 C 字符串比较。

当你尝试使用它时,它会出现,

This POSIX function is deprecated beginning in Visual C++ 2005. Use the ISO C++ conformant _stricmp instead.

我不明白的是为什么 ISO 不希望 MSVC++ 使用 strcmpi,为什么 _stricmp 是首选方式,为什么他们会费心重命名函数,以及以下划线开头的函数如何符合 ISO。我知道这一切一定是有原因的,我怀疑是因为 strcmpi 是非标准的,也许 ISO 希望非标准扩展以 _underscore 开头?

最佳答案

ISO C 保留某些标识符以供将来扩展(参见 here ),包括以“str”开头的任何内容。

关于c++ - strcmpi 重命名为 _strcmpi?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1964821/

相关文章:

c - 如何访问字符数组的第一个字符?

javascript - 使用用户提交的密码的 WebCrypto 字符串加密

sql - 在 Postgresql 中选择以字符串形式存储的分数作为十进制值

c++ - 在c++中隐式传递参数中的数组长度

c++ - 无法通过终端运行应用程序,但应用程序在 XCode 中运行良好

c - 无法理解命令行参数指针

c++ - C 风格使用现代 C++ 类

c++ - C++ 字符串类如何将一个变量转换为另一个变量?

c++ - 通过继承的类模板 SFINAE

c++ - 为什么 C++ 迭代器需要返回引用?