c语言中取址运算符、指针运算符
1、单目运算符&为取址运算符,其作用是获取对象的地址,生成指向对象的指针,与其说是获取地址,不如说是生成指针。对象地址的转换说明为%p,其中的p为pointer的首字母。
#include <stdio.h> int main(void) { int n; double x; int a[3]; printf("nnnn: %p\n", &n); printf("xxxx: %p\n", &x); printf("a[0]: %p\n", &a[0]); printf("a[1]: %p\n", &a[1]); printf("a[2]: %p\n", &a[2]); return 0; }
2、单目运算符*为指针运算符
#include <stdio.h> int main(void) { int a = 100; int b = 200; int c = 500; int *x, *y; //声明指向int型的指针变量 x = &a; // 生成指针x、y,x为指向对象a的指针, y为指向c的指针 y = &c; printf("xxxx: %d\n", *x); //指针运算符加指针可以获取该指针指向的对象, *x可以获取指针x指向的对象,即对象a。 同理,*y获取对象c。 printf("yyyy: %d\n", *y); putchar('\n'); x = &b; //修改x的指针 *y = 800; // y为指向c的指针, *y相当于c的别名,对*y修改,相当于对对象c进行修改 printf("aaaa: %d\n", a); printf("bbbb: %d\n", b); printf("cccc: %d\n", c); printf("xxxx: %d\n", *x); printf("yyyy: %d\n", *y); return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律