字元陣列與字元指標

2021-10-05 19:43:48 字數 1301 閱讀 7876

存放字元量的陣列

#include

void

print_str

(char str)

printf

("\n");

}void

copy_str

(char str1,

char str2)

str2[i]

='\0';}

intmain()

// *(string2+i) = '\0';

// printf("string1 = %s\n",string1);

// printf("string2 = %s\n",string2);

print_str

(string1)

;print_str

(string2)

;return0;

}

字元指標指向的是乙個字串常量的首位址,即指向字串的首位址

靜態區字串不可修改

#include

void

print_str

(char

*str)

void

copy_str

(char

*str1,

char

*str2)

// *to = '\0';

/* while((*to = *from)!='\0)

*/while

(*to++

=*from++)}

intmain()

字元陣列由若干個元素組成,每個元素放乙個字元,

字元指標變數中存放的是位址(字串第乙個字元的位址),絕不是將字串放到字元指標變數中。

賦值方式

對字元陣列只能對各個元素賦值,不能用以下辦法對字元陣列賦值

char str[20]; str = "hello world";

對字元指標變數則可,char *a; a = "hello world",賦給a的是字串第乙個元素的位址

定義乙個字元陣列,編譯時為它分配記憶體單元,他有確定的位址,定義乙個字元指標時,給指標變數分配記憶體位址。

上例中*string3+5 = hello11,∗st

ring

3+

5*string3+5

∗strin

g3+5

將字元指標首位址向後移,輸出字串

字元陣列與字元指標

10.4 指標與字串 10.4.1 字元陣列與字元指標 在第八章中我們已經詳細討論了字元陣列與字串,字元指標也可以指向乙個字串。我們可以用字串常量對字元指標進行初始化。例如,有說明語句 char str this is a string.是對字元指標進行初始化。此時,字元指標指向的是乙個字串常量的首...

字元指標與字元陣列

1.字元指標可以指向乙個字串。我們可以用字串常量對字元指標進行初始化。例如,有說明語句 char str this is a string.是對字元指標進行初始化。此時,字元指標指向的是乙個字串常量的首位址,即指向字串的首位址。這裡要注意字元指標與字元陣列之間的區別。例如,有說明語句 char st...

字元陣列與字元指標

節選了一些有價值和易錯的部分。char str this is a string.char string this is a string.字元指標str與字元陣列string的區別是 str是乙個變數,可以改變str使它指向不同的字串 但不能改變str所指的字串常量 string是乙個陣列,可以改...