字串和陣列的解析

2021-07-12 00:25:38 字數 1217 閱讀 3041

1、字串

1)定義:由數字、字母、下劃線組成的一串字元,程式語言中表示文字的資料型別。通常以串的整體作為操作物件。

2)定義字串的方式:

a.通過字元陣列來定義字串"helloworld",陣列中每個儲存單元存放乙個字元

char str1 = "helloworld"; 

b.通過字元指標來定義字串"helloworld",指標str2指向乙個存放字串"helloworld"的連續位址單元的首位址

char *str2  = "helloworld";  

c.通過巨集定義來定義字串"helloworld",等價於str3="helloworld"

#define str3 "helloworld"; 

3)字串常用函式

a.函式名:strcpy

功能:串拷貝,函式返回乙個字串

用法:char* strcpy(char* str1,char* str2);

b.函式名:strcat

功能:字串拼接函式,函式返回乙個字串

用法:char* strcat(char* destin,char* source);

c.函式名:strchr

功能:在乙個串中查詢給定字元的第乙個匹配之處,函式返回乙個字串

用法:char* strchr(char* str,char c);

d.函式名:strcmp

功能:串比較,函式返回乙個整型數值

用法:int strcmp(char* str1,char* str2);

2、陣列

1)定義:相同元素按一定順序排列的集合。

2)陣列的特殊定義:

int arr[5];

int *p;

p=arr;

a.arr的值是該陣列記憶體的首位址,其指向陣列的第乙個元素;但&arr是指整個陣列的記憶體塊,故arr和&arr的值是一樣的,都是該陣列的首位址,但他們的含義不一樣,及sizeof(arr)不等於sizeof(&arr)

b.p=arr把陣列的首位址賦給p,即p現在就是指向陣列的首位址,通過p就可以訪問整個陣列,但是p這裡只是是個指標變數,也就是p的本質沒有改變,p不能和arr一樣代表整個陣列的記憶體

c.arr+1就相當於陣列自加一樣。

3、字串和陣列聯絡

1)二者都是一段連續的記憶體,共性較多;

2)字元在記憶體中是以ascll碼儲存的,以%d格式輸出乙個字元就是輸出它的ascll碼。

字串和陣列

一 字串儲存 1.串的邏輯結構 子串 串中任意個連續的字元組成的子串行。主串 包含子串的串。子串的位置 子串的第乙個字元在主串中的序號。2.串的儲存結構 順序串 用陣列來儲存串中的字串行。有三種方法可以表示串的長度 1 用乙個變數來表示串的實際長度。2 在串尾儲存乙個不會在串 現的特殊字元作為串的終...

字串和陣列

串的儲存結構 用陣列來儲存串中的字串行。串的長度 方案1 用乙個變數來表示串的實際長度。方案2 在串尾儲存乙個不會在串 現的特殊字元作為串的終結符,表示串的結尾。方案3 用陣列的0號單元存放串的長度,從1號單元開始存放串值。非壓縮結構 乙個結點只儲存乙個字元 壓縮結構 乙個結點儲存多個字元 模式匹配...

字串 向量和陣列

迭代器介紹 陣列定義和初始化string物件 string物件上的操作 處理string物件中的字元 定義和初始化 vector v1 vector v2 v1 v2中包含有v1中所有元素的副本 vector v2 v1 等價於v2 v1 vector v3 n,va1 v3包含n個重複的v1 ve...