栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言: 字符串结束符 ‘ ’

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言: 字符串结束符 ‘ � ’

1、本质

        ''是字符串结束标志,不计入串长,但要占内存空间。        

        ''是一个ASCII控制字符,是转义字符。意思是告诉编译器,这不是字符0,而是空字符。空字符对应的二进制为0000 0000,而数字0的二进制为0011 0000。

2、说明

        (1) 任何字符串之后都会自动加上'',由C编译系统自动加上。所以在用字符串赋初值时一般无须指定数组的长度, 而由系统自行处理。

        把一个字符串赋值给数组:char zf[]={"abcdef"};
        实际上数组str1在内存中的实际存放情况为: 
                                                a b c d e f  '' 
        把字符数组zf中的字符串拷贝到另一个字符数组中。字符串结束标志''也一同拷贝。

        (2)如果字符串末尾少了‘’转义字符,则其在输出时可能会出现乱码问题。

3、注意

        (1)这个''是占一个位置的,所以如果一个长度为10的字符串要放在一个字符串数组里面的话,这个字符串数组长度至少为11。

        (2)当数组长度不够时,指定了数组长度且赋值的字符串(没有人工输入'')长度大于等于数组长度,后面的信息会丢失。

        如:

                char zf[6]={"abcdef"};
        由于字符组zf的长度为6,所以后面的信息会丢失,即''丢失。

        (3)如果在给数组赋值时,把每个字符单独用引号括起来。也会丢失''。

        如:
                 char zf[]={'a','b','d','d','e','f'};

4、用法

若要让数组以''结束,则可

        (1) 字符串赋值

        char zf[]={"abcdef"}; 

        (2)手动添加

        char zf[]={''a','b','d','d','e','f',''}; 

        (3) 数组长度大一点

        char zf[7]={'a','b','d','d','e','f'}; 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/861726.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号