C语言数组储存量

Python012

C语言数组储存量,第1张

c[3]是可以存储3个字符的,c[n]就是存储n个字符,n是int

整形常量.

对于,以上你提出的问题,定义一个字符数组

c[3],的确,他只可以储存三个字符,分别储存在c[0],c[1],c[2],但是,在c/c++中并没有检查数组是否越界或者是超界的功能,所以,在scanf(),语句中,我们输入的字符,c/c++是没有检查,所以,理论上我们只能输入两个字符,最后一个留给系统自动添加的\0,

但是,实际上,我们输入的字符.qwe是可以正确运行的,最后,系统也会自动添加\0,但是,添加的\0,就可能在数组定义之外了,可能就是系统在定义数组的之后,对于我们输入的其他字符也相应在数组定义之后的一连串空间中继续添加,所以,可以输入大于3的字符都可以正常输出,但是,会报错!错误是数组的访问越界了吧!以上纯属个人理解,仅供参考!希望对你有帮助!^_^.

1.数组保存:

通常数组大小是固定的,所以你所要保存的数据要在数组最大范围内。

使用简单。当程序关闭后所有数据都会消失。

2.链表保存:

链表的大小不是固定的,用多少有多少,也不会造成浪费。

但需要你自己定义一个链表,或是直接使用STL。当程序关闭后所有数据都会消失。

3.文件保存:

将数据存储到文件中,也就是在计算机硬盘上,即使关闭程序文件中的数据依然存在。