C语言之数组中你所不在意的重要知识
#include<stdio.h>
void simpleArray();
void main()
{
simpleArray();
}
//数组的简单操作
void simpleArray()
{
//数组的声明并赋值
int c[5] = { 1, 2, 3, 4, 5 };
printf("\nC数组内存中占%d个字节",sizeof(c));// /0在内存中会占一个字节,但是只针对于字符串
printf("\nC数组中有%d个元素",sizeof(c)/sizeof(int));
printf("输出数组中的值,并打印每个元素的地址:\n");
for (int i = 0; i < 5; i++)
{
printf("\nc[%d]=%d and c[%d]=%x",i,c[i],i,&c[i]);
}
system("pause");
}
2,查看局部变量。
3,显示出数组信息。
4,查看内存。
5,根据局部变量中的地址,查看到内存中的数据。
内存中数据的动态赋值过程:
#include<stdio.h>
void valuation();
void main()
{
valuation();
}
//动态对数组赋值
void valuation()
{
int d[10];
for (int i = 0; i < 10; i++)
{
d[i] = i + 1;
}
system("pause");
}
2,F5启动调试。
3,查看局部变量。
4,此时内存中还没有值,因为还没有赋值。
5,为了方便操作,右键,选择停靠。
6,按F5继续,发现第一个被赋值为1。
7,继续按F5,第二个元素被赋值为2。
8,一直F5继续道赋值为9时停止了,虽然数组的最后一位,没有赋值,但是for循环已经不再满足条件,此时跳出循环。正确的写法应该把i<10改为i<=10。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。