基本介紹
字元是程式的基本元素,每一段程式都是由字元組成而來
字元常數(char constant)是由單引號
括起的字元
他也代表一個int
的值,字串及一連串的字元
字串可包含字母、數字、或特殊符號(+,-,*,/,$)
字串是由雙引號
括起的
C 的字串是以 NULL('\0')
為結束的字元陣列
注意
1 2 3
| 字串是指標 字元是整數(0-255) 所以如果方法參數要字元,要宣告為 func(int c);
|
字串宣告有兩種
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| // 字串即陣列 char color[] = "blue"; char color[] = {'b','l','u','e','\0'}; const char *colorPtr = "blue";
// 動態建立陣列 int size = 10; int i = 0; int *arr = malloc(size * sizeof(int)); memset(arr, 0, sizeof(int) * size);
printf("顯示元素值:\n"); for(i = 0; i < size; i++) { printf("arr[%d] = %d\n", i, *(arr+i)); }
printf("指定元素值:\n"); for(i = 0; i < size; i++) { arr[i] = i*10; }
printf("顯示元素值:\n"); for(i = 0; i < size; i++) { printf("arr[%d] = %d\n", i, *(arr+i)); } free(arr);
|
字串陣列大小必須要放得下字串+結束字元
1 2
| char word[20]; scanf("%s",word);
|
字串轉換函式
要用以下函示需要匯入stdlib
1 2 3 4 5 6 7
| double atof(const char *nPtr); int atoi(const char *nPtr); long atol(const char *nPtr);
double strtod (const char *nPtr, char **endPtr); long strtol (const char *nPtr, char **endPtr, int base); unsigned long strtoul (const char *nPtr, char **endPtr, int base);
|
常用函式
參考
參考