Possible Duplicate:
Using strtok with a std::string錯誤:從 '爲const char *' 的無效轉換到 '字符*'
#include<iostream>
#include <string>
#include <string.h>
using namespace std;
int main()
{
string s("hello hi here whola");
string background;
char *strval;
char* tok = strtok_r(s.c_str()," ",&strval);
while(tok !=NULL)
{
cout << tok <<"\n";
if (tok == "&")
background = tok;
else
{
statements1;
statement2.. ;
}
tok = strtok_r(NULL, " ",&strval);
}
return 0;
}
輸出:
new.cpp: In function ‘int main()’:
new.cpp:13:47: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
/usr/include/string.h:359:14: error: initializing argument 1 of ‘char* strtok_r(char*, const char*, char**)’ [-fpermissive]
你爲什麼要標記這個C?你的印象是C和C++是相同的語言嗎? –
這真的很可怕。先選擇一種語言,我推薦C++。 – Andro
爲什麼人們在使用不同的語言時將其標記爲c和C++? –