這是哪里錯了嗎?
#include <stdio.h>
/* 定義say函數 */
void say(char string) ? ? ? //數組參數應該怎么寫呢?
{
? ? printf("%s\n",string);//打印字符串
}
int main()
{
? ? //定義字符串數組
? ? char string[] = "我在慕課網上學習IT技能!";
? ? say(string); ? ? ? ? ? ? ? ?//調用say函數輸出字符串
? ? return 0;
}
#include <stdio.h>
/* 定義say函數 */
void say(char string) ? ? ? //數組參數應該怎么寫呢?
{
? ? printf("%s\n",string);//打印字符串
}
int main()
{
? ? //定義字符串數組
? ? char string[] = "我在慕課網上學習IT技能!";
? ? say(string); ? ? ? ? ? ? ? ?//調用say函數輸出字符串
? ? return 0;
}
2019-07-09
舉報
2020-04-21
修改方法如樓上,傳遞的形參是一個char基類而非字符串首地址,你要理解,char和string在作為形參傳遞時是不一樣的,char是字符的“值”而string是首字符的”地址“,相當于傳遞了一個索引給函數,使得函數能夠根據索引讀取整個字符串。所以記住在傳遞字符串時應當以指針傳遞,string[]本質上也是指針。
2019-11-12
void say(char* string)
2019-07-09
void sat(char string[])