C語言中定義字符串的幾種方式


1,什么是字符串?    

  所謂字符串本質上就是以'\0作為'結尾的特殊字符數組;

 

2,定義字符串的過程中有哪些注意點  

  由於字符串本質上其實就是以'\0作為'結尾的特殊字符數組,所以定義字符串時,必須保證字符串存儲的最后一個元素為'\0'。

  當我們沒有給定字符串具體長度時,我們通過這種方式:char 字符串名稱[] = {字符串所含元素}; 來定義字符串時,就需要手

  動的在字符串末尾加上'\0',不然的話,它就僅僅是一個字符數組,而不是我們所需要的字符串。當我們給定字符串具體長度時,

  也就是通過這種方式:char 字符串名稱[字符串長度] = {字符串所含元素}; 來定義字符串時,就需要使字符串長度等於字符串實際

  長度+1,不然的話,它也僅僅是一個字符數組,而不是我們所需要的字符串。具體實例見定義字符串的具體格式。

 

3,定義字符串的具體格式 

  3.1,char 字符串名稱[字符串長度] = {字符串所含元素};

    注意點:如果字符串所含元素中我們沒有加上'\0',那么字符串長度應該就為字符串實際長度+1;

    例如 :char name[6] = {'T', 'o', 'm', 'H', 'e'};

 

  3.2,char 字符串名稱[] = {字符串所含元素};

    注意點:通過這種方式來定義字符串,則需要在{}中寫上'\0';

    例如:char name[] = {'T', 'o', 'm', 'H', 'e', '\0'};

 

  3.3,char 字符串名稱[] = "字符串所包含元素"    

    注意點:通過這種方式來定義字符串的底層原理其實就是將"TomHe",轉換為了{'T', 'o', 'm', 'H', 'e', '\0'};

    例如:char name[] = "TomHe"; <==> char name[] ={'T', 'o', 'm', 'H', 'e', '\0'};

   

 

  具體代碼如下:

  

#include <stdio.h>
int main()
{
    char str1[6] = {'T', 'o', 'm', 'H', 'e'};
    char str2[] = {'7', '8', '8', '\0'};
    char str3[] = "Tomhe789";
    printf("str1 = %s\n",str1);
    printf("str2 = %s\n",str2);
    printf("str3 = %s\n",str3);

    return 0;
}

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM