指针是·学懂c语言最关键的部分之一。首先我们先来了解一下指针到底是什么吧?
指针大小在32位平台下是4个byte,其值为某一个内存的地址。每个地址表示一个字节
什么是指针
这里我们用一段代码来说明:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <windows.h>
int main()
{
int a = 10;//定义会分配空间,声明不分配空间
int *p = &a;//开辟4个字节,取出a的地址放到p变量中,即p指向a的地址
printf("%p\n", p);
system("pause");
return 0;
}
指针的类型:type + * ;
注意:类型决定了开辟空间的大小以及如何解析该变量的内容(从栈角度)。
总的来说:指针就是地址。
指针变量:用来存放地址的变量;
变量指针:即变量的地址;
指针加减整数
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <windows.h>
int main()
{
int n = 10;
char *p = (char*)&n;