A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© HiGodl 中级黑马   /  2015-9-22 21:32  /  1033 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

     字符串末尾有一位隐藏字符‘\0’



                 "jack" = 'j'+'a'+'c'+'k'+'\0'
                char name[10] = "jack";---------------字符串定

                name[8] = "it";
                name2[8] = {'i','t','\0'}
                name3[8] = {'i','t',0}
                name4[8] = {'u','t'}
                以上三种写法效果是一样的

                name5[] = {'i','t'}--------这样写只是一个字符数组,不是字符串,长度是2,无法存储\0字符

                字符串输出---“%s”
                printf(“%s”,name)


        字符串注意:
                %s输出字符串会从输出字符串的内存地址开始往下查找,直到遇到“\0”结束,,如果输出的字符数组不以“\0”结束,printf就会一直往下找直到遇到"\0"
                字符串数组中有“\0”时,用%s输出也会从“\0”处截断字符串


        strlen------得到字符串中不包括“\0”的字符串长度-----此函数包含在"string.h"的头文件中
                从某个地址开始数字符个数,直到遇到\0,就不数了,而且不\0不算在内
                oc的字符串是以@ 开头例如:@"itcast"

2 个回复

倒序浏览
不错,顶一个!
回复 使用道具 举报
棒棒哒,顶一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马