%後面不是美元符號$,是s,是字串佔位符,另外這個問題是學C語言的第一課內容,任何教材上都有,不需要來大神回答
C語言中的資料型別沒有字串型,但是它提供了進行整串輸入和輸出的格式說明符%s。
如:
char str[10];
scanf(“%s”,str);透過鍵盤輸入一個字串到str中
printf(“%s”,str);輸出這個字串
%S專指單位元組字元的字串,而str2為寬字元,型別不匹配,故出現不可預期的錯誤。
若str2為英文字元,如“abcd”,就只能輸出a,因str2為寬字元,a有兩個位元組,值為0x0061,在記憶體中為61 00,故按單位元組輸出只能輸出61,碰到00,即空字元後認為字串結束,不會再輸出。
誠心謝邀!
輸入輸出的字串標準型別,列子
scanf(“%s”,&ch);這是輸入
printf(“%s”,ch);這是輸出
還有其他型別,整數型別是%d,單精度浮點型別,也就是小數是%f,字元型別%c,
從沒見過%$,這是非法字元。