c 語言 儲存字串的方法

2022-01-30 12:03:18 字數 1243 閱讀 9127

1,使用字元陣列,**如下:

char name="wangtianqiao";

char *cpoint;

cpoint = name ;

printf("%s\n",name);

printf("%c",name[4]);

printf("%c",*(cpoint+4));

2,使用字元指標,**如下:char *cpoint="wangtianqiao";

printf("%s",cpoint);

3,把字串a賦值給字串b,注意字串都是以'\0'結尾的,

char a="i am a boy.",b[20];

int i;

for(i=0;*(a+i)!='\0';i++)

*(b+i)=*(a+i);

*(b+i)='\0';

for(i=0;*(b+i)!='\0';i++)

printf("%c\n",*(b+i));

4,字串的經典賦值:for(;(*b++ = *a++)!='\0';); 

上面這一句就可以完成賦值 語句了。

等價於:

while((*b++=*a++)!='\0');

5,字元指標變數指向格式字串,可以使用printf直接輸出。

char *format = "a=%d";

printf(format,10);

6,指標陣列中的每乙個元素都是乙個指標,其指向不同的記憶體區域,如果指標陣列元素指向的是字元陣列,那麼可以使用字元庫函式,如下:

char *p[2]=;

printf("%x\n",p[0]);

printf("%x\n",p[1]);

if(strcmp(p[0],p[1])<0)

printf("%s",p[0]);

getch();

7,指標相減得到的是相差的個數而不是位元組數

如下**,輸出的值為3,

int a=;

int *p1,*p2;

p1 = &a[1];

p2 = &a[4];

printf("%d",p2-p1);

8,指標的比較必須在 同乙個陣列中進行比較。不在同乙個陣列進行比較,是沒有意義的。

int a=;

int *p1,*p2;

p1 = &a[1];

p2 = &a[4];

printf("%d\n",p2-p1);

if(p1

C語言字串 字串排序

本題要求編寫程式,讀入5個字串,按由小到大的順序輸出。輸入為由空格分隔的5個非空字串,每個字串不包括空格 製表符 換行符等空白字元,長度小於80。按照以下格式輸出排序後的結果 after sorted 每行乙個字串 red yellow blue green white after sorted b...

c語言字元轉字串 C語言字串的另類用法

講這個例子前,咱們先來看乙個簡單的程式 字串陣列實現數字轉字母 include include int main void 當然我們也可以這麼寫,用指標的形式來表示 include include int main void 同樣的,結果也是和上面是一樣的,我們再對這種寫法進行簡化,如果初學者的基礎...

C語言的字串

在 c 語言中,字串實際上是使用 null 字元 0 終止的一維字元陣列。ps char 型變數預設初始化的值為 0 由於在陣列的末尾儲存了空字元,所以字元陣列的大小比單詞 hello 的字元數多乙個。其實,不需要把 null 字元放在字串常量的末尾。c 編譯器會在初始化陣列時,自動把 0 放在字串...