指標 和 字串

2022-08-30 04:00:14 字數 682 閱讀 3668

用指標遍歷字串的所有字元:

1 // 定義乙個指標p

2 char *p;

3 4 // 定義乙個陣列s存放字串

5 char s = "mj";

6 7 // 指標p指向字串的首字元'm'

8 p = s; // 或者 p = &s[0];

9 10 for (; *p != '\0'; p++)

用指標直接指向字串:

1 #include

2 3 int main()

4 其實,呼叫strlen函式時,你傳乙個位址給它就行了,它會從這個位址開始計算字元的個數,直到遇到空字元'\0'位置,

因此傳入指標變數或者陣列名都可以。

其他字串處理函式也是一樣的:

1 char *strcpy(char *, const char *); // 字串拷貝函式

2 char *strcat(char *, const char *); // 字串拼接函式

3 int strcmp(const char *, const char *); // 字串比較函式

char a = "lmj";定義的是乙個字串變數!

char *p2 = "lmj";定義的是乙個字串常量!嚴格來說,應該寫成const char *p2 = "lmj";,前面加個常量修飾符

字串和指標

1 字串反轉函式 void string reverse const char ptr,char str 2 找子串 include include include int main for i 0 i len str len ptr 1 i if i len str len ptr return ...

字串指標和字元陣列

很多剛從c 轉c 的人都不明白,在c 中這樣的 char pchar hello!定義字元指標pchar 指向乙個字元陣列首 元素即h pchar h 問題所在行 到了c 中怎麼就不行了?你翻遍參考書,都會說,pchar 指向的是常量,怎麼能允許改變呢?你又問了,怎麼我在c 中執行的好好的?沒人回答...

指標和字串常量

指標和字串常量 首先比較兩段 1char ch1 hello ch1 h ok ch1 0 h ok printf s r n ch1 2 char ch2 world ch2 w 執行時錯誤 ch2 0 w 執行時錯誤 printf s r n ch2 這裡的 world 是字串常量,而 hell...