程式碼塊
#include <stdio.h>
int main(void){
char *str="我的夢想是當一名程式猿!";
printf("%s", str);
printf("%c", *(str+5));
return 0;
}
1.
printf(“%s”, str);
輸出的結果是:我的夢想是當一名程式猿!
這句話的意思是列印整個str所指向的字串.沒有星號是因為前面有個%s
,s是string字串的意思,那麼後面就得是一個字元指標,字串是預設char型別的陣列,所以被同樣當作首地址,列印不需要星號前置,輸出整個字串,直到` `
停止。
2.如果是%d
,那麼後面可以是不加星號,列印出的結果是記憶體的隨機值。
printf(“%d”, str);
輸出的結果是:4210688
3.也可以加上星號,列印出的結果是str指向的字串第一個字元的ASCII值為止。
printf(“%d”, *str);
輸出的結果是:-50