C/ c++中C_str()函数的用途是什么?
what is use of C_str() function in C/C++
谁能告诉我c_str()函数在C/c++中的用途?
当你想将字符串与c函数一起使用时
string s = "hello";
printf( "your string:%s", s.c_str() );
这是c++的东西,而不是C的。
c_str(来自std::string
)的一个常见用途是精确地将c++ std::string
转换为const char*
C字符串,这是许多低级C函数(例如Posix系统调用,如stat
等)所需要的。
生成与string对象内容相同的以空结尾的字符序列(c-string),并将其作为指向字符数组的指针返回。
这里有一个很好的例子:http://www.cplusplus.com/reference/string/string/c_str/
我想你是在问string::c_str()
吗?这是一个返回string
对象的C字符串表示的方法。您可能需要一个C字符串表示来调用OS API,例如
相关文章:
- 在两台机器之间进行时间戳的最佳c++chrono函数是什么
- 用常见虚拟函数实现的任意组合来实现派生类的正确方法是什么
- 是什么原因导致它无法编译?它是声明签名还是在函数本身的实现中
- 是什么让放置新调用对象的构造函数?
- 重载运算符的范围是什么?它是否会影响作为类成员的集合的插入函数?
- 在函数中拥有函数原型的目的是什么?
- 使用基类指针调用基类的值构造函数的语法是什么?
- C++:使用方法调用析构函数的顺序是什么?
- 将此布尔值传递给此函数的最有效方法是什么?
- * 和 ** 在 C++ 函数声明中是什么意思?
- C++:Lambda 函数指针转换的用例是什么?
- C++关于指针和使用函数将它们启动到堆的行为究竟是什么?
- 这个C++编译器优化(在自身的实例上调用对象自己的构造函数)的名称是什么,它是如何工作的?
- 在将函数声明为友元时,尖括号的含义是什么?
- 在模板类之外定义友元函数的正确方法是什么?
- 在使用包含冒号的类似函数的宏时,是什么导致了这种编译器差异?
- 具有相同特征的两个对象是否只在内存中存储一次?无论定义它们的函数是什么,都是不同的
- 这里的字符串函数是什么意思
- 传递 lambda 函数的权衡是什么?
- 在C 中,对2D数组的增量是什么?函数断言(0)做什么?