c++ - 以char数组为参数的函数

标签 c++

我想使用一个将 char str[] 作为参数的函数。我想调用提供字符串输入的函数。

void someFunction (char str[]) {
    /* ... */
}

// Works.
someFunction("1010101");

// Does not work.
string someString;
someFunction(someString); 

我怎样才能接到第二个电话上类?

编辑:我无法更改函数的输入参数。

最佳答案

取决于字符串操作的性质。如果您读取但不写入字符串,请将原型(prototype)更改为 const char str[] 并使用 someString.c_str(),就像其他人建议的那样。

如果您更改字符串的字符而不是长度,请使用&*someString.begin()

如果您扩展/截断字符串,则传递 string& 并根据字符串对象工作会更容易。老实说,麻烦少一些。

关于c++ - 以char数组为参数的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9322582/

相关文章:

c++ - 没有友元函数的两个类的私有(private)操作

c++ - 如何获得两个(伪)随机但彼此不同的容器迭代器/元素?

c++ - cocos2d-x 和 box2d 链接错误

c++ - dynamic_cast 和多态性的最佳实践

c++ - 最小未排序数组的最小相等搜索

c++ - 如何链接库? (MySQL 库)

c++ - vs 2013 C++ 的 opencv 问题

c++ - 如何订阅 C++/CX 中的 Windows 运行时组件内引发的事件?

c++ - 我可以像 `delete[]` 那样获取动态分配数组的大小吗?

c++ - 增强现实定位球上线(metaio sdk)