码迷,mamicode.com
首页 > 编程语言 > 详细

C语言之指针初猎及传递数组

时间:2014-05-21 10:24:34      阅读:295      评论:0      收藏:0      [点我收藏+]

标签:c   编程   计算机   微软 visual stduio   vs2013 c语言 c++   



数组的最大长度:
由于内存模型的工作方式,不应该超过64KB的数据变量。这也需要根据平台的不同,DOS有限制,但是在Windows中没有。


数组的长度(以字节为单位)取决于它包含的元素数目和每个元素的长度。元素的长度取决于数组的数据类型和正在使用的计算机。




指针:
1,指针的定义;
2,指针的用途;
3,如何声明和初始化指针?
4,如何使用指向变量和数组的指针?
5,如何使用指针将数组传递给函数?




指针是什么?要理解指针,需要先知道计算机如何在内存中存储信息的基本知识。
计算机内存:
PC的内存(RAM)由数以百万计的顺序存储单元组成,其中每个单元用一个唯一的地址标识。
计算机的内存从0开始,最大值取决于内存量。
在C程序挣声明一个变量时,编译器会留出一个具有唯一的地址的内存单元来存储该变量。
编译器将该地址同变量名关联起来。当程序使用该变量时,将自动访问相应的内存单元。


float变量占用4个字节,short占用2个字节。内存的每个字节都有地址,因此占用多个字
节的变量实际上占用了多少地址。
那么指针如何处理多字节变量的地址呢?
其工作原理如下:

变量的地址实际上是它暂用的第一个字节的地址。



bubuko.com,布布扣


数组下标表示法就是在使用指针。



<span style="font-family:KaiTi_GB2312;font-size:24px;">#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

void main()
{

       int var = 1;
	int *ptr;//申明指针

	ptr = &var;//给指针赋值。注意:要加&
	printf("var变量的值:%d\n",var);
	printf("*ptr指针的值:%d\n",*ptr);

	printf("var变量的地址:%d\n",&var);
	printf("*ptr指针的地址:%d\n", ptr);
	 
	system("pause");
 
}</span>


运行结果:

bubuko.com,布布扣



<span style="font-family:KaiTi_GB2312;font-size:24px;">#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#define MAX 10  //声明全局变量
int largest(int  num_array[], int length);

void main()
{

	//接受控制台输入的10个数字,并存入数组中
	int array[MAX], count;
	
	printf("请依次输入%d个数字\n",MAX);
	for (count = 0; count < MAX; count++)
	{
		//将元素一一放入数组中
		scanf("%d",&array[count]);
	}

	printf("\n\nLargest value=%d\n",largest(array,MAX));

	system("pause");
	

}

//比较数组中的元素得出最大值
int largest(int  num_array[], int length)
{
	int  count, biggest = -12000;
	for(count = 0; count < length; count++ )
	{
		if (num_array[count]>biggest)
		{
			biggest = num_array[count];
		}

	}
	return biggest;

}



</span>



运行结果:

bubuko.com,布布扣


C语言之指针初猎及传递数组,布布扣,bubuko.com

C语言之指针初猎及传递数组

标签:c   编程   计算机   微软 visual stduio   vs2013 c语言 c++   

原文地址:http://blog.csdn.net/mini0520/article/details/26387393

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!