我是一名C语言初学者,现在零散学习到了字符串相关内容。目前我所遇到的困难是:定义一个字符串 char name[25],name[strlen(name) - 1] = '\0',我对这两句代码表现出不理解。
问题如下:
a. 所定义的25位的字符串name,是否是24位有效位宽+1位空字符?
b. strlen(name)是否等于25,还是说依赖于name的实际长度,例如,我输入‘Hello'只占用了5位,因此strlen(name)=5?
c. name[strlen(name) - 1] = '\0' 这句话是将字符串最后一位替换成空字符,通过搜索资料发现,字符串最后自带一个空字符,所以这个操作的目的是什么?
**************
希望能够大神的解答,谢谢!
问题如下:
a. 所定义的25位的字符串name,是否是24位有效位宽+1位空字符?
b. strlen(name)是否等于25,还是说依赖于name的实际长度,例如,我输入‘Hello'只占用了5位,因此strlen(name)=5?
c. name[strlen(name) - 1] = '\0' 这句话是将字符串最后一位替换成空字符,通过搜索资料发现,字符串最后自带一个空字符,所以这个操作的目的是什么?
**************
希望能够大神的解答,谢谢!