Hello noob程序員在這裏遇到了strcmp問題,這是我的代碼。從'char'到'const char *'的C++ strcmp轉換
while (strcmp("m",wood) !=0 || strcmp("j",wood) !=0 || strcmp("o",wood) !=0){
cout << "(m for mahogany, o for oak, or p for pine): ";
cin >> wood;
}
這是我的錯誤。
- dining.cpp:在成員函數 '無效DiningSet :: woodType()':
- dining.cpp:76:24:錯誤:從 '字符' 無效轉換到 '爲const char *'[ - fpermissive] /usr/include/string.h:143:12:error:初始化參數2'int strcmp(const char *,const char *)'[-fpermissive]
- dining.cpp:76:48:錯誤:從'char'到'const char *'無效轉換[-fpermissive] /usr/include/string.h:143:12:錯誤:初始化參數2'int strcmp(const char *,const char *) '[-fpermissive]
- dining.cpp:76:72:錯誤:從'char'無效轉換爲'const char *'[-fpermissive] /usr/include/string.h:143:12:錯誤:初始化參數2'int strcmp (常量字符*,常量字符*)」 [-fpermissive]
的''||應該是''&& – xanatos 2012-03-13 11:05:24
如果要比較兩個'char'just使用''==或'!=',如果你想比較兩個字符串('char *')然後使用'strcmp'。將單個字符與字符串進行比較沒有任何意義,這正是您所看到的。 – 2012-03-13 11:05:27
什麼是木材的數據類型.. ?? – 2012-03-13 11:05:34