OSX 10.8,碳製作的std :: string出++一個char *用C
我有一個std ::字符串,我想從一個char *
例推導:
CFStringRef *s;
char *c[128];
CFStringGetCString(*s, *c, 128, kCFStringEncodingUTF8);
int size = sizeof(c);
g_uid.assign(c, size);
但我得到一個無效的轉換,我不明白爲什麼
error: invalid conversion from 'char**' to 'long unsigned int'
std::string g_uid = "";
被定義爲全球
這不是一個'的char *',它是'字符*'的數組。 – chris 2013-03-03 21:21:30
如果你想從'(const)char *'創建一個'std :: string',你可以做例如'const char * blah =「foo」; std :: string str = blah;'。 – 2013-03-03 21:21:44
如果不清楚,只需將'char * c [128];'改爲'char c [128];'可能。 – 2013-03-03 21:25:35