用 char 專門表示單個字符,單引號包圍:
char a = '1'; char b = '$'; char c = 'X'; char d = ' '; // 空格也是字符 char e = '\63'; // 八進制轉義字符
⚠️ 字符用**單引號** ' ',字符串用**雙引號** " ",不可混淆。
輸出:%c 輸出字符,%s 輸出字符串。
#include <stdio.h>
#include <stdlib.h>
int main() {
char a = 'E';
char b = 70;
int c = 71;
int d = 'H';
printf("a=%c, a=%d\n", a, a);
printf("b=%c, b=%d\n", b, b);
printf("c=%c, c=%d\n", c, c);
printf("d=%c, d=%d\n", d, d);
system("pause");
return 0;
}
輸出:
a=E, a=69
b=F, b=70
c=G, c=71
d=H, d=72
核心結論:
char 變量內存存儲 ASCII 碼值;%c 按 ASCII 表轉字符,%d 輸出整數。int 變量存儲整數本身;%c 同樣按 ASCII 表轉字符。C 無字符串類型,間接表示:
char *variableName = "string";
char * 為固定形式,後接變量名與字符串常量。底層涉及指針與數組,後續《指針》章節詳解。
#include <stdio.h>
#include <stdlib.h>
int main() {
char c = '@';
char *str = "This is a string.";
printf("char: %c\n", c);
printf("string1: %s\n", str);
printf("string2: %s\n", "This is another string.");
system("pause");
return 0;
}
輸出:
char: @
string1: This is a string.
string2: This is another string.