C語言字串

2022-03-13 03:18:24 字數 1304 閱讀 7041

1.字串的概念

在c語言中,沒有字串型別,自然不能使用字串變數,但可以使用字串常量。

字串是指若干有效字元的序列,其表示方法是用雙引號將字串行括起來,如「string」。

字串可以包括轉義字元及ascii碼表中的字元。

2.字串的儲存

在對字串進行處理時,字串存放在字元陣列中,例如:

static char s[14];

c語言規定字元『\0』作為字串結束的標誌。

例如:char s[14]=;

s的長度為14實際字元只有12個,和乙個『\0』

陣列命名可以省略花括號:例如 char s[8]="program";但不能是:s=「program」;

3.字串的輸入與輸出

<1>使用printf()輸出字串:用%s,%c來控制輸出,%s整個輸出,%c則一一用迴圈輸出;

<2>使用puts()輸出:puts(str);會自動換行;

<4>使用gets()輸入字串:gets(s);以回車為結束,可以讀入空格;

scanf()一次可以輸入多個字串,如:scanf("s%s%",s1,s2);gets()一次只能輸入乙個

4.字串處理函式

這些函式放在sting.h中;

<1>字串複製函式strcpy().

格式呼叫:

strcpy(str1,str2);

函式功能:將字串str2複製到字串陣列str1中,str2的值不變。

由於陣列不能進行整體複製,所以不能直接使用賦值語句來實現賦值,下列是非法的:

str1=str2;str=「program」;

<2>字串連線函式strcat().

呼叫格式:

strcat(str1,str2);

函式功能:將str2連同『\0』連線到str1的最後乙個非『\0』字元後面。連線後的新字串存到str1中。

<3>字串比較函式strcmp();

呼叫格式:

strcmp(str1,str2);

函式功能:若str1=str2,則函式返回值為0;若str1>str2,則函式返回值為正整數;若str1注:字串比較不是比較長短,而是比較ascii碼值的大小。從左到右比較,直到遇到不同值,以首個不同大者為大。並返回兩者之差。

比較兩個字串是否相等用:if(strcmp(str1,str2)==0){};而不能是if(str1==str2)

<4>字串長度行數strlen().

呼叫格式:strlen(string);

<5>在stdlib.h中,還有atoi,將字串轉化為整數、長整數,double。

C語言字串 字串排序

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

C語言 字串

char str lnj 字串變數 l n j 0 printf str size lu n sizeof str 字元陣列 這個並不是字串,而是字元陣列 char charvalues 如何輸出字串變數,s str 陣列的名稱,陣列的名稱就是陣列的位址 s的原理,從傳入的 位址 開始逐個取出,直到...

c語言字串

字串 字串1 概念 1.1 定義 1.1.1 用雙引號引起來的多個字元 1.2 兩個連續的雙引號中間是空格或回車,則兩個字串自動連在一起 1.3 遇見 0字串結束,0可以提前終止字串 1.4 初始化 1.4.1 char str 6 1.4.2 char str hello 編譯時自動給 加6 1....