小白学C指针 *

1.&取地址符 - “在哪里?”

inta=10;// a 是个变量,值是 10&a// 这是 a 的地址(门牌号),比如 0x7ffeeb0b1234

比喻

  • a= 你家的电视机(值)
  • &a= 你家的地址(可以找到电视机的位置)

2.*星号 - “是什么?”

(1) 声明指针时:

int*p;// p 是一个指针,能指向 int 类型数据的地址

(2) 解引用时(取指针指向的值):

inta=10;int*p=&a;// p 保存了 a 的地址*p=20;// 找到 p 指向的位置,把那里的值改成 20// 现在 a 变成 20 了!

比喻

  • p= 一张写着地址的纸条
  • *p= 按照纸条地址去房子里拿东西(或放东西)

3.完整例子,一句话解释

#include<stdio.h>intmain(){inta=10;// 变量 a,值是 10int*p=&a;// p 保存了 a 的地址printf("a的值: %d\n",a);// 10printf("a的地址: %p\n",&a);// 地址1printf("p的值: %p\n",p);// 地址1(和上面一样)printf("*p的值: %d\n",*p);// 10*p=99;// 通过 p 找到 a,改成 99printf("现在a是: %d\n",a);// 99return0;}

4.一句话口诀

& 变量 → 地址(取地址) * 指针 → 值(解引用) 声明时:int *p → p是个指针 使用时:*p = 10 → 找到p指向的地方,放个10

日常类比

  • 你家:a
  • 你家地址:&a
  • 快递单(写着地址):p
  • 按快递单找到你家:*p

记住:&取地址*取内容。一个往“里”看,一个往“外”看。


那么有的时候int星号p int和星号之间有的时候有空格,有的时候空格在星号和p之间,这是什么意思?

没区别!纯粹是代码风格问题,编译器完全不在乎空格在哪里。

几种写法的意思完全相同

int*p;// 常见写法:强调 *p 是一个整数int*p;// C++风格:强调 p 是一个整型指针int*p;// 中间派int*p;// 紧凑派(不推荐)

但!有个陷阱要特别注意:

// 错误理解:两个变量都是指针?int*p1,p2;// 其实只有 p1 是指针,p2 是普通整数!// 正确写法(想要两个指针):int*p1,*p2;// 两个都是指针// 更好的写法(避免混淆):int*p1;int*p2;// 分开写,清晰

为什么有不同风格?

  1. int *p(C程序员常用):
int*p;*p=10;// 一致:都是 *p
  • 想法:*p这个整体是int类型
  • 更适合理解:*p = 10(解引用得到整数)
  1. int* p(C++程序员常用):
int*p;p=&a;// p 本身是指针类型
  • 想法:p的类型是int*(整型指针)
  • 更适合理解:int*是一种类型

给你的建议

  • 初学者用int *p(更符合C传统)
  • 每行只声明一个指针变量,避免混淆
  • 保持团队代码风格一致

重要区别不在空格,在变量名前面的星号个数

int*p;// 一级指针int**pp;// 二级指针(指向指针的指针)

记住:编译器只看星号*在不在,不看空格在哪里。空格只是让人读起来舒服些。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1150296.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机深度学习毕设实战-基于python-CNN卷积神经网络对海洋壳类生物识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

2024年AI原生应用在事实核查领域的最新研究进展

当AI成为“真相侦探”&#xff1a;2024年AI原生事实核查的进化与突破 关键词 AI原生应用、事实核查、大语言模型(LLM)、多模态推理、实时核查、可信AI、知识图谱 摘要 在虚假信息像“数字病毒”一样蔓延的今天&#xff0c;事实核查已成为维护信息生态的“免疫系统”。但传统核查…

【小程序】订单数据缓存 以及针对海量库存数据的 懒加载+数据分片 的具体实现方式

订单数据缓存 以及针对海量库存数据的 懒加载数据分片 的具体实现方式&#xff0c;结合UniApp微信小程序的技术栈&#xff0c;分两部分详细拆解落地思路和核心代码&#xff0c;既讲逻辑也给可落地的实现方案。 一、订单数据缓存的实现&#xff08;低网环境适配核心&#xff09;…

救命神器2026专科生必看!8个AI论文网站深度测评与推荐

救命神器2026专科生必看&#xff01;8个AI论文网站深度测评与推荐 2026年专科生论文写作必备工具测评 随着AI技术的不断进步&#xff0c;越来越多的专科生开始借助AI工具提升论文写作效率。然而&#xff0c;面对市场上琳琅满目的论文辅助平台&#xff0c;如何选择真正适合自己需…

FHIR 中 _summary 参数

前言 在构建基于 HL7 FHIR&#xff08;Fast Healthcare Interoperability Resources&#xff09;标准的医疗信息系统时&#xff0c;开发者和架构师常常面临一个关键问题&#xff1a;如何在保证数据完整性的同时&#xff0c;优化网络传输效率与客户端处理性能&#xff1f; FHI…

AI自动化编排:从入门到精通(基于Dify构建AI智能系统)

目录第一篇&#xff1a;范式重构 —— AI 编排底层基石第1章 AI 自动化编排&#xff1a;开启“人机协同”新时代1.1 从命令式编程到声明式编排1.2 LLM 为什么需要“手脚”&#xff1a;AI 应用的三阶段演化1.3 AI 编排的核心目标&#xff1a;让系统具备行动能力1.4 技术选型逻辑…

Nuxt3全栈开发实战指南

目录第一篇&#xff1a;全栈基石 —— Nuxt 核心概念篇第 1 章&#xff1a;NuxtJS 的前世今生与生态位现代 Web 开发的痛点&#xff08;SEO、白屏、开发效率&#xff09;什么是 NuxtJS&#xff1a;Vue 3 的超集与全栈框架SSR&#xff08;服务端渲染&#xff09;、SSG&#xff0…

为什么AI算法工程师年薪能破百万?大厂高薪岗位学习指南与实战经验分享_月薪35-50k 16薪

大模型算法工程师成为当前薪资最高的技术岗位&#xff0c;月薪中位数近3万元&#xff0c;顶尖人才年薪破百万。字节、腾讯等大厂大量扩招AI人才&#xff0c;DeepSeek等开出高达154万年薪。然而多数求职者能力不足以满足企业需求。《AI算法工程师培养计划》由一线大厂专家主讲&a…

深度学习计算机毕设之基于python-CNN深度学习的卷积神经网络对狗的行为识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

不用卡尺怎么测量复杂零件尺寸?告别卡尺,精准高效:SIMSCAN-E手持扫描仪在复杂零件检测中的革命性应用

告别卡尺&#xff0c;精准高效&#xff1a;SIMSCAN-E手持扫描仪在复杂零件检测中的革命性应用图1&#xff1a;思看科技&#xff08;SCANTECH&#xff09;—全球领先的三维视觉产品与解决方案提供商一、机械加工与来料检测的挑战&#xff1a;传统测量方法的局限在机械加工和来料…

【毕业设计】深度学习基于python-CNN深度学习对宠物体型识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

【毕业设计】深度学习基于python-CNN深度学习对宠物体型识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

南昌出租车打表价格为3.15元/公里,没有燃油费,大家觉得贵吗?2026.1.1

南昌出租车打表价格为3.15元/公里&#xff0c;没有燃油费&#xff0c;大家觉得贵吗&#xff1f;

【课程设计/毕业设计】基于机器学习python-CNN深度学习对宠物体型识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

【课程设计/毕业设计】通过python的对狗的体型识别通过python-CNN深度学习对狗的体型识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

动态机器码

链接&#xff1a;https://pan.quark.cn/s/e84e768b1e70

动态机器码

链接&#xff1a;https://pan.quark.cn/s/e84e768b1e70

上海AI实验室突破:视觉提示技术实现机器人多角度感知

这项突破性研究来自上海AI实验室、清华大学、上海交通大学和密歇根大学的联合团队&#xff0c;发表于2025年1月的arXiv预印本平台&#xff08;论文编号&#xff1a;arXiv:2601.05241v1&#xff09;。想要深入了解技术细节的读者可以通过这个编号查询完整论文。现代机器人要想真…

Edge Remove

链接&#xff1a;https://pan.quark.cn/s/d1b49f057f4c软件特点无界面设计&#xff1a;为用户提供了简洁的操作体验。一键卸载&#xff1a;用户只需点击一次&#xff0c;即可开始卸载Microsoft Edge。确认卸载功能&#xff1a;在进行卸载之前&#xff0c;会有一个确认过程&…

【毕业设计】通过python-CNN深度学习对狗的体型识别通过python-CNN深度学习对狗的体型识别

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…