1. 程式人生 > >指針和指針變量

指針和指針變量

應用 har 技術分享 div windows true pau con com

指針就是地址

指針變量就是存放地址的變量

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賦值

那麽就是隨機的,而你給它賦值,就會影響到系統的一些關系代碼

但一般程序不給這麽幹

若分配的地址是合法的,就允許這麽幹。。但還是不好

所以一定要初始化

技術分享圖片

指針和指針變量