C語言中字符串的存儲方法
眾所周知,C語言中沒有數(shù)據(jù)類型能夠存儲字符串,char數(shù)據(jù)類型僅僅能夠存儲一個字符的數(shù)據(jù),那么在C語言中關(guān)于存儲字符串這一難題我們改何去何從呢?
下面將詳述相關(guān)的字符串存儲方法;
1、使用字符數(shù)組存;
[root@Qrui ruiy]#
#include<stdio.h>
int main(int argc,const char *argv[],const char **env[]) {
char name[] = "qinrui";//定義一個字符數(shù)組,并初始化;
char *cPoint;//定義一個指針;
cPoint = name; //將指針指向數(shù)組;
printf("%s\n",name);//使用指向數(shù)組的指針打印字符數(shù)組中的字符串;
printf("%c\n",name[4]);//打印出字符數(shù)組的第5個字符,即u字符同上打印字符數(shù)組的第5個字符,但是使用的方法是指針的位偏移;
printf("%c\n",*(cPoint+4));//作用
}
2、使用字符指針存儲字符串;
#include<stdio.h>
int main(int argc,const char *argv[],const char **env[]) {
char *cPoint = "qinrui";
printf("%s\n",cPoint);
}
總結(jié):從上面2中C語言中的字符串存儲的方法可以看出,使用字符數(shù)組可以打印字符串中的某個字符。但是字符指針卻不可以。
3、可以把字符串a(chǎn)賦值給字符串b,但請注意字符串都是以\0結(jié)尾的;
字符指針變量指向格式字符串
char *format = "a = %d";
可以使用printf直接輸出;
指針數(shù)組中每一個元素都是一個指針;其指向不同的區(qū)域,
指針相減得到 是相差的個數(shù),而不是字節(jié)數(shù);

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C語言深入探究sizeof與整型數(shù)據(jù)存儲及數(shù)據(jù)類型取值范圍
在main函數(shù)中,sizeof是可以正常工作的,但是在自定義函數(shù)中就不可以了。所以本文將為大家詳細(xì)講解一下關(guān)鍵字sizeof、整型數(shù)據(jù)存儲深入、數(shù)據(jù)類型取值范圍深入2022-07-07
C++利用靜態(tài)成員或類模板構(gòu)建鏈表的方法講解
這篇文章主要介紹了C++利用靜態(tài)成員或類模板構(gòu)建鏈表的方法講解,鏈表是基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu),而在C++中構(gòu)件單鏈表還是稍顯復(fù)雜,需要的朋友可以參考下2016-04-04
c++重載運(yùn)算符時返回值為類的對象或者返回對象的引用問題
這篇文章主要介紹了c++重載運(yùn)算符時返回值為類的對象或者返回對象的引用問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-11-11

