#include #include #include int main()
// c語言中沒有字串概念 只有字元陣列 和字元指標
// 字元陣列是定長的,長度不能修改, 但是可以修改某個位置的字元,字元指標是不能修改元素的
// 保留最有乙個陣列元素 \0 表示結束
char str = ;
char str2[6] = ;
char str3[10] = "hello";
char *str4 = "hello";
printf("str is %s, size is %d\n", str, strlen(str));
printf("str2 is %s, size is %d\n", str2, strlen(str2));
printf("str3 is %s, size is %d\n", str3, strlen(str3));
printf("str4 is %s, size is %d\n", str3, strlen(str4));
str[1] = 'a';
printf("str is %s, size is %d\n", str, strlen(str));
//str4[1]= 'a';
while(*str4)
int nums = ;
printf("nums %d\n", sizeof(nums));
int length = sizeof(nums)/sizeof(int);
int i = 0;
for (; i輸出如下:
str is hello, size is 5
str2 is hello, size is 5
str3 is hello, size is 5
str4 is hello, size is 5
str is hallo, size is 5
character is h
character is e
character is l
character is l
character is o
nums 1612
34number is 1
number is 2
number is 3
number is 4
沒有找到字元
str6 is china
str6 is china is powerful
C語言 字元指標和字元陣列的區別
char str this is a string.是對字元指標進行初始化。此時,字元指標指向的是乙個字串常量的首位址,即指向字串的首位址。這裡要注意字元指標與字元陣列之間的區別。例如,有說明語句 char string this is a string.此時,string是字元陣列,它存放了乙個字...
C語言 字元指標和字元陣列的區別
在日常敲 的過程中我們會遇見這樣乙個問題 例子1 void mian void mian 例子2 這裡我們換成乙個指標,對指標int a賦值,則不需要加取位址符號 原因不難理解,上乙個例子對a賦值需要其位址,所以我們需要加 而這裡指標int a本身就是乙個位址,所以沒必要再加 取指標變數a本身的位址...
C語言中關於字元陣列和指標陣列
做筆試題目的時候,碰到字元陣列初始化的問題,居然一下子懵了。在c語言中儲存字串有兩種方法 字元陣列和字串指標 這兩者的儲存位置不同,首先字元陣列 區域性變數 是儲存在棧中的 指標指向字串時,則包括了兩部分,指標本身,儲存在棧中 區域性指標變數 字串本身儲存在 段 gcc中是這樣 基於上面一點就會產生...