欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C语言中定义字符串的几种方式

程序员文章站 2022-06-16 20:37:46
1,什么是字符串? 所谓字符串本质上就是以'\0作为'结尾的特殊字符数组; 2,定义字符串的过程中有哪些注意点 由于字符串本质上其实就是以'\0作为'结尾的特殊字符数组,所以定义字符串时,必须保证字符串存储的最后一个元素为'\0'。 当我们没有给定字符串具体长度时,我们通过这种方式:char 字符串 ......

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;
}

 

C语言中定义字符串的几种方式