C语言指针定义和赋值
指针
有人说学习C语言成也指针败也指针,是C语言的重点,也是难点,甚至有人专门撰写了C语言的指针汇集成册并出版。那什么是C语言的指针呢?这有什么作用呢?
指针的概念
仅供参考:
简而言之,指针是C语言中的一种特殊的变量,存储的是另一个变量的内存地址,而不是存储在该内存地址中的值。
指针的作用
C语言指针的重要作用之一是动态地为程序分配内存,或者说是通过C语言指针直接操作内存。
指针定义语法
type *varName
如果指针要赋值的话,应当赋的值应该是内存地址,而不是具体的值,其中可以通过寻址运算符“&”来获取变量的内存地址。具体的可参考下方的实例代码。
指针的用法
通常情况下,可以直接使用指针变量,注意,这是一个内存地址,也可以通过寻址运算符"&"来输出非指针变量的内存地址,实例代码如下(输出的地址是一样的):
#include <stdio.h>
int main() {
int x = 1;
int *y = &x;
printf("%x\n",&x);
printf("%x\n",y);
return 0;
}
访问指针指向的值
C语言指针既然指向的是变量的内存地址,那么如何通过指针来获取该内存地址上的值呢?可以通过如下语法:
*pointer
访问指针指向的值实例代码
#include <stdio.h>
int main() {
int x = 1;
int *y = &x;
// 访问指针指向的内存地址的值
printf("%d\n",*y);
return 0;
}
免责声明:内容仅供参考,不保证正确性。