繁体   English   中英

C ++:如何将'const char *'转换为char

[英]C++: How to convert 'const char*' to char

我知道在StackOverflow上有很多类似的问题,但是我找不到能够解决我的问题的任何问题。 每当我尝试做这样的事情:

// str = some string or char array

// some magic to get around fpermissive errors
stringstream convert;
convert << str;
// capture the stream's temporary string
const string store = convert.str();
// get a manageable array
const char* temp = store.c_str();

然后尝试做类似atoi(temp[0]) ,我不断收到经典的转换错误,即无法将char转换为const char。 atoi和许多其他函数的文档中,const char是必需的参数。 如果只有一个const,如何发送char? 检索特定位置的char是否自动转换为char?

我不确定这是否是导致错误的原因,但是atoi的参数不是char,而是指向1的指针。 因此,而不是atoi(temp [0])

尝试这个

atoi(&temp[0])

因为那是一个指针。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM