C++:如何将 'const char*' 转换为 char
C++: How to convert 'const char*' to char
我知道 Whosebug 上有很多这样的问题,但我没能找到任何有助于解决我的问题的问题。每当我尝试做这样的事情时:
// 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,而是指向 char 的指针。所以而不是
atoi(温度[0])
试试这个
atoi(&temp[0])
因为那是一个指针。
我知道 Whosebug 上有很多这样的问题,但我没能找到任何有助于解决我的问题的问题。每当我尝试做这样的事情时:
// 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,而是指向 char 的指针。所以而不是 atoi(温度[0])
试试这个
atoi(&temp[0])
因为那是一个指针。