指针和指针变量

指针就是地址

指针变量就是存放地址的变量

char *pa,说明地址pa存放的数据类型是char型的

int *pb,说明地址pb存放的数据类型是int型的

取值运算符和定义指针用的是同一个符号*,属于符号的重用

在不同地方有不同的用法,在定义的时候属于定义一个指针变量,其他地方属于取地址的值

a=3属于直接访问, *&b = 4,属于间接访问

// ConsoleApplication4.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "windows.h"

int main()
{
	char a = 'F';
	int b = 123;

	char *pa = &a;
	int *pb = &b;

	printf("%c\n", *pa);
	printf("%d\n", *pb);

	*pa = 'C';
	*pb += 1;

	printf("now ,a = %c\n", a);
	printf("now, b = %d\n", b);

	system("pause");

	return 0;
}

  

尽管pa,pb作为指针变量指向的具体数据分别是char和int

但他们作为变量都是整型,即4个字节

首先,你没有给指针变量a赋值

那么就是随机的,而你给它赋值,就会影响到系统的一些关系代码

但一般程序不给这么干

若分配的地址是合法的,就允许这么干。。但还是不好

所以一定要初始化

 

猜你喜欢

转载自www.cnblogs.com/EvilAnne/p/9689760.html
今日推荐