C语言之数组中你所不在意的重要知识

时间:2014-05-14 19:41:56   收藏:0   阅读:306


#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");
}



1,设置断点后,运行打印出结果。

bubuko.com,布布扣



2,查看局部变量。


bubuko.com,布布扣



3,显示出数组信息。


bubuko.com,布布扣




4,查看内存。


bubuko.com,布布扣



5,根据局部变量中的地址,查看到内存中的数据。

bubuko.com,布布扣




内存中数据的动态赋值过程:


#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");
}



1,设置断点。

  bubuko.com,布布扣



2,F5启动调试。

bubuko.com,布布扣



3,查看局部变量。

bubuko.com,布布扣



4,此时内存中还没有值,因为还没有赋值。

bubuko.com,布布扣


5,为了方便操作,右键,选择停靠。

bubuko.com,布布扣



6,按F5继续,发现第一个被赋值为1。

bubuko.com,布布扣



7,继续按F5,第二个元素被赋值为2。

bubuko.com,布布扣



8,一直F5继续道赋值为9时停止了,虽然数组的最后一位,没有赋值,但是for循环已经不再满足条件,此时跳出循环。正确的写法应该把i<10改为i<=10。bubuko.com,布布扣





C语言之数组中你所不在意的重要知识,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!