前面我們已經(jīng)討論過字符數(shù)組與字符串,字符指針也可以指向一個字符串,可以用字符串常量對字符指針進行初始化,例如:
char *str = "www.sztianhecheng.cn" ;
這是對字符指針進行初始化。此時,字符指針指向一個字符串常量的首地址。
還可以用字符數(shù)組來存放字符串,例如:
char string[ ] = "Welcome to dotcpp.com";
在這個語句中,string是數(shù)組名,代表字符數(shù)組的首地址。因此可以通過數(shù)組名string來訪問字符串。
字符串指針和字符串數(shù)組兩種方式都可以訪問字符串,但它們有著本質(zhì)的區(qū)別:字符指針str是個變量,可以改變str使它指向不同的字符串,但不能改變str所指向的字符串常量的值。而string是一個數(shù)組,可以改變數(shù)組中保存的內(nèi)容。應(yīng)注意字符串指針和字符串數(shù)組的區(qū)別。
#include<stdio.h> int main() { char *str = "www.sztianhecheng.cn"; char string[]="Welcome to dotcpp.com"; str[0]='C'; //試圖修改str指向的常量區(qū)的字符串內(nèi)容 return 0; }
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習題和答疑,點擊了解:
一點編程也不會寫的:零基礎(chǔ)C語言學練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進階課程
從零到寫出一個爬蟲的Python編程課程
只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程
信息學奧賽或C++選手的 必學C++課程
藍橋杯ACM、信息學奧賽的必學課程:算法競賽課入門課程
手把手講解近五年真題的藍橋杯輔導(dǎo)課程