c++ - strstr return 如何不是一个常数

标签 c++ c string

标准函数strstr用于查找字符串中子字符串的位置。函数的两个参数都是const char *类型,但返回类型是char *

我想知道一个标准函数是如何实现违反 const 正确性的。

最佳答案

所有 const char * 都在告诉你 strstr 不会修改你传递给它的字符串。

是否修改返回的字符串由您决定,因为它是您的字符串!

在 C++ 中,这已通过重载方法并具有两个版本进行了更改,const 输入版本具有 const 输出。

在 C 语言中,它没有为您内置的安全级别,并假设您知道自己是否应该修改返回的字符串。

关于c++ - strstr return 如何不是一个常数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29827028/

相关文章:

c++ - debian linux c++ 如何使击键打破无限循环

c - 如何在特定字符后剪切字符串?

java - 快速静态键值映射

c++ - Boost ASIO 异步接受器不打开监听端口

c++ - 如何在Qt C++中更新QWindow,文本不显示

c - 8字节内存可以输入4字节吗?没有损失?

c - 从字节的 char[] 中获取 int

C 结构体 : segmentation fault

ios - iOS 应用程序中的 C 样式字符串被损坏

c++ - pow() 在使用类型转换时给出意想不到的结果