当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

C语言学习六指针

发表于: 2013-03-14   作者:dcj3sjt126com   来源:转载   浏览:
c
摘要: 初识指针,简单示例程序: /* 指针就是地址,地址就是指针 地址就是内存单元的编号 指针变量是存放地址的变量 指针和指针变量是两个不同的概念 但是要注意: 通常我们叙述时会把指针变量简称为指针,实际它们含义并不一样 */ # include <stdio.h> int main(void) { int * p; // p是变量的名字, int *

初识指针,简单示例程序:

/*
	指针就是地址,地址就是指针
	地址就是内存单元的编号
	指针变量是存放地址的变量
	指针和指针变量是两个不同的概念
	但是要注意: 通常我们叙述时会把指针变量简称为指针,实际它们含义并不一样
*/
# include <stdio.h>

int main(void)
{
	int * p;	// p是变量的名字, int * 是连在一起的,他表示 p 变量存放的是int类型变量的地址
				//int * p 不表示定义了一个名字叫*p的变量
				// int * p 应该这样理解:p是变量名, p变量的类型是int *类型
				//		所谓 int * 类型, 实际就是存放int变量地址的类型
	int i = 3;
	int j;

	p = &i;	
	
	/*
		1.  p 保存了i的地址,因为p指向i
		2.  p 不是 i, i也不是p, 更准确的说修改p的值不影响i的值,修改i的值也不会影响p的值
		3.  如果一个指针变量指向了某个普通变量,则
			* 指针变量 就完全等同于,普通变量
		
			例子:
				如果p是个指针变量,并且p存放了普通变量i的地址
				则p指向了普通变量i
				*p 就完全等同于 i
				或者说: 在所有出现 *p 的地方都可以替换成i
						 在所有出现 i 的地方都可以替换成*p

				*p 就是以p的内容为地址的变量

	*/

	j = *p;	//等价于 j = i
	printf("i = %d, j = %d\n", i, j);

        附注:
                * 的含义
                    1.乘法
                    2.定义指针变量
                      int * p;
                      //定义一个名字叫 p 的变量, int * 表示p只能存放int变量的地址
                    3.指针运算符
                         该运算符放在已经定义好的指针变量的前面
                         如果 p 是一个已经定义好的指针变量
                         则 *p 表示  以p的内容为地址的变量
	return 0;
}

 

C语言学习六指针

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号