簡體   English   中英

指向char數組的char指針

[英]char pointer pointing to a char array

#include<stdio.h>
int main(){
 char a[3];
 char *b=NULL;
 a[0]=0;
 a[1]=1;
 a[2]=2;
 b = a;
 printf("%c",b);
 b++;
 printf("%c",b);
 b++;
 printf("%c",b);
 return 0;
}

我試圖通過將指針加1來打印值0,1,2。

b本身就是一個指針,您必須取消引用它才能獲取實際值:

printf("%d", *b);
b++;
printf("%d", *b);
b++;

等等

%c告訴printfchar參數解釋為字符代碼(很可能是ASCII)。 請改用%d

#include<stdio.h>
int main(){
 char a[3];
 char *b=NULL;
 a[0]='0';
 a[1]='1';
 a[2]='2';
 b = a;
 printf("%c",*b);
 b++;
 printf("%c",*b);
 b++;
 printf("%c",*b);
 return 0;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM