您的位置:首页 > 编程语言 > C语言/C++

C语言之指针

2015-11-28 16:21 197 查看
指针是C语言学习一个重要的概念,它极大的方便了C语言编程,用好了指针可以帮助我们编程,但是同时指针也是饱受争议,因为指针的使用很容易出错,所以在一开始学的时候就弄懂有关指针的知识点是必要的。

那么指针是什么呢?其实指针也是一种变量,和其他类型的变量一样,也是存储数据的,只是在指针变量里面存储的是一个内存的地址,可以通过解引用来获得这个地址真正的里面的东西。32位计算机的内存大小是4G,所以要能标示完全4G大小的内存这个地址的长度最小是32位,所以在32位机器上指针的大小是4个字节,也就是32位。

1、一级指针

int i = 10;

int *p = &i;

p就是一个指向一个int型数据的指针,*p就是找到p中存放的那个地址所代表的数据,也就是i的值。



2、二级指针

int i = 10;

int *p = &i;

int *pp = &p;

pp就是一个二级指针,它是一个指向指针的指针。



3、字符串和指针

C语言中没有字符串变量,但是有字符串常量和字符指针。在C中去找到和定位一个字符串就用到字符指针。

char *str = “Hello World!”;

str就是一个字符指针,指向的是一个字符串(字符串内容不可修改),它的内容是字符串第一个字符的地址也就是‘H’的地址。指针str存在于内存的栈区,而字符串常量“Hello World!”存在于内存的文字常量区(在内存中只有一份)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言 指针