查看單個文章
  #3  
舊 2014-06-25, 04:14 PM
哈啦 的頭像
哈啦 哈啦 目前離線
論壇管理員
 
註冊日期: 2002-05-28
文章: 23,014
預設

引用:
作者: yumi 查看文章
函数原型:
int strcmp(const char *s1,const char *s2)

strcmp(*p[x][0],color)是不允许的转换

不太了解?



我目前學到的strcmp是strcmp(str_1,str_2);裡面並不是用指標,所以本題的{if (!strcmp(p[x][0],color))其中的p而非*p是因為無法用*而拿掉嗎?
再來就是最後的printf("%s is %s.",color,p[x][1]); 為何不寫成printf("%s is %s.",color,*p[x][1]);呢?
而且我發現在(!strcmp(p[x][0],color)中如果寫成(!strcmp(p[x][0],&color)也是可以的,why?

還有,為何這個char *p[][2]要在int main(void)的外面定義呢?我有試著把它移到main函數裡面來,答案似乎都一樣正確。
__________________
咖啡走路
微博


您是網站站長嗎?歡迎到站長俱樂部 一起討論吧。
按我看版規
code.club
回覆時引用此篇文章