入门C语言中的数组,字符串常量与指针

哎呀,刚接触C语言的时候,真是不知所措。
记得那是2 01 2 年,我在大学学习C语言。
那时我对数组、字符串、指针的理解就像读圣经一样。

我们先来说说数组。
当时我写了一个程序,想用数组来存储一些学生的成绩。
结果忘记了数组的索引是从0开始的,写了一个越界访问,直接让程序崩溃了。
当时我花了很长时间才找到问题所在,气得直跺脚。

然后是字符串常量。
当时我用的是字符串常量来存储一些提示信息。
结果我不小心漏掉了最后的NUL字符,导致打印的信息后面都是乱码。
我当时真的很后悔。
后来我了解到ANSI C之前的编译器可能不支持自动数组初始化,所以我必须小心。

更不用说指针了。
当时写了一个指针数组,想用它来存储多个字符串。
结果指针指向的地址出现了问题,导致程序运行不稳定。
当时查了很多资料,才明白了指针和地址的关系,以及空指针的处理。

总之,这三者是C语言编程的基础,一定要掌握好。
记得有一次,我在一个项目中使用了一个指针数组来处理用户输入的多个字符串。
当时我使用指针来访问和修改字符串的内容。
那时我才真正感觉到指针的威力如此之大。

现在回想起来,当时确实遇到了很多坑,但也正是因为这些坑,让我对C语言有了更深的理解。
所以说,编程就是一个不断踩坑、不断成长的过程。
哈哈,现在想起来还是很怀念那段时光。

C# 索引超出数组界限

C 数组的索引从 0 开始,长度为 2 5 5 的数组的最大索引为 2 5 4 越界访问将引发异常。
最后一个元素是 arr[arr.Length-1 ] 并且是安全的。
超出范围的索引将会崩溃。
为了避免异常,请使用 if(idx>=0&&idx

数组a[10]中有几个元素?

记得刚学编程的时候,老师要求我们用数组记录一周的温度。
编写并提交代码后,我注意到周末温度数据不一致。
那时候我就怀疑自己是不是写错了。
后来我发现数组从0开始计数,认为星期日是[6 ]。
那天下午的阳光特别刺眼。
教室里唯一的风扇在呼呼地响。
完成代码修改后,再次运行,代码正确。
a[0] 是星期一温度,a[6 ] 是星期日温度。
这件事已经在我心里很久了。
等等,还有一件事。
我之前用Python做过数据分析,也遇到过类似的陷阱。
索引从0开始,但有时我们会不小心错过第一个值。