c语言字符串定义

文/鏉庡潖
专题:

c语言字符串定义是存入字符的数组。定义一个数组,数组里存放元素为字符串各个字符+'\0',其中'\0'为码0值,编译器会自动在字符串的末尾添加此值。

c语言字符串如何定义

定义一个数组,数组里存放元素为字符串各个字符+'\0',其中'\0'为码0值,编译器会自动在字符串的末尾添加此值。

在定义这个数组时,指定数组的大小为6,也就是说需要申请6个字节的存储空间,而在等号右侧的双引号中我们却只书写了5个字符。这并不是笔误,C语言规定当使用双引号定义字符串时以'\0'作为这个字符串的结束标志符,也就是说这个字符串一共有6个字符。

在c语言中,将字符串作为字符数组来处理。(c++中不是)在实际应用中人们关心的是有效字符串的长度而不是字符数组的长度,例如,定义一个字符数组长度为100,而实际有效字符只有40个,为了测定字符串的实际长度,C语言规定了一个“字符串结束标志”,以字符'\0’代表。

C语言采用字符数组储存字符串,在从字符数组中读取字符串时,计算机是按照顺序来读取的,当然如果没有结束标记,计算机就会一直的读取下去(那么一直读取,然后超出了所定义的数组范围。

定义字符串的具体格式

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

注意点:如果字符串所含元素中我们没有加上'',那么字符串长度应该就为字符串实际长度+1;

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

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

注意点:通过这种方式来定义字符串,则需要在{}中写上'';

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

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

注意点:通过这种方式来定义字符串的底层原理其实就是将"TomHe",转换为了{'T', 'o', 'm', 'H', 'e', ''};

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

小编推荐

一键复制全文保存为WORD