在我的代碼有編譯器警告時的char *設置爲字符串字面
char* s = strchr(first,'/');
if(s==NULL) s = "";
else s = s+1;
但我的gcc編譯器抱怨在與
warning: assignment discards qualifiers from pointer target type
倒數第二行從我的理解有關ANSI C,它是因爲我將s(非const值)設置爲字符串文本(const值)。 (我在這裏錯了嗎?)但是我需要s是非const的(因爲我可能會通過加1來改變它的值),並且我還需要將s設置爲空字符串。我有沒有更好的代碼設計方法來實現這兩個目標,而不需要編譯器大喊大叫?
我確實啓用了-Wwrite-strings標誌。
這真的很難說。如何更多的代碼?你想做什麼?你只是想指出它在別的地方,或者你想修改strchr返回的字符串? – Mario
你打算對空串做什麼修改? –
'然而,我需要非常量'爲什麼? – Chris