🍃课堂讲解
内存中的数据
数组就是个地址然后有头尾
val【】
当我们val+1 在内存里就是 x+4
🤔️我们是为了让这个指针指向下一个值的地址
编译器知道这个变量是什么变量类型!
只有*(Val+1) 才是 5
如果下标变成负值呢?也可以用
实际举例
注意⚠️:每次都要给你要加入的数字一个确切的名字,不然就是magic number,让人困惑是不是只有他可以
都要初始化变量
注意这个数组定义很有意思:
相当于int cmu【5】={1,2,3,4,5}
看图 汇编底层实现数组:
movl(rdi,rsi,4), eax
这就是取数:z【digital】
循环数组
注意:c和汇编特别相似:比如+=这个符号
goto
指针和数组区别:
指针声明以后不分配空间。而数组则会分配空间
注意⚠️:如果我
声明a[3];这是一个指向一个三个int空间的指针。
但是如果我*a【3】这就有空指针的风险
因为这是个指针,不是数组,没有初始化。
这样很危险。