#define LEN 15 char name[LEN+1]; 为什么要LEN+1,不这么写会怎么样

[复制链接]
查看11 | 回复2 | 2013-6-28 16:14:40 | 显示全部楼层 |阅读模式
只是一种习惯性表达方式吧。假定LEN是可接受的字符串最大长度,所以定义数组的时候要+1预留结束符\0;你如果不加1,也没有关系,只要不越界就行了。那LEN的解释就应该是包含了结束符的最大长度。...
回复

使用道具 举报

千问 | 2013-6-28 16:14:40 | 显示全部楼层
举个例子,char s[]="abcde",他的长度为5,在字符串的最后还有一个'\0'标记,虽然不显示,但是毕须有定义,如果不定义,会被其它定义占用,出现错误社个字串如果定义长度赋值至少是 char s[6]="abcde",不可以用char s[5]...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行