当前位置: 首页 > news >正文

C++ 初级程序员核心知识全集

C++ 初级程序员核心知识全集

一、变量的本质与内存基础
  • 概念:变量就是向系统申请一块内存空间来存数据。
  • 核心操作
    • 取地址:&变量名
    • 看大小:sizeof(变量)
  • 代码示例
#include<iostream>usingnamespacestd;intmain(){intage=18;// 输出变量占用的字节数(通常4)cout<<"Size: "<<sizeof(age)<<endl;// 输出变量在内存中的地址(十六进制)cout<<"Address: "<<&age<<endl;return0;}
二、作用域与生命周期
  • 概念
    • 作用域:变量生效的范围(花括号{}内)。
    • 生命周期:变量从创建到销毁的过程。局部变量出作用域即销毁。
  • 代码示例
#include<iostream>usingnamespacestd;intglobalVar=100;// 全局变量:整个文件都能用intmain(){intlocalVar=10;// 局部变量:只在 main 函数内有效{intblockVar=5;// 块级变量cout<<blockVar<<endl;// 能访问cout<<localVar<<endl;// 能访问外部变量}// cout << blockVar << endl; // 报错!blockVar 已经销毁return0;}
三、常量(const 与 constexpr)
  • 概念
    • const:运行时常量,值不能被修改,但可以在运行时计算。
    • constexpr:编译时常量,必须在编译阶段就能确定值,效率更高。
  • 代码示例
#include<iostream>usingnamespacestd;intmain(){constintrunTime=10;// runTime = 20; // 报错:只读变量不可赋值intx=5;constinta=x+5;// 正确:运行时常量// constexpr int b = x + 5; // 报错:constexpr 必须用常量表达式初始化constexprintcompileTime=100;// 正确:编译时已知cout<<a<<" "<<compileTime<<endl;return0;}
四、自动类型推导(auto)
  • 概念:让编译器根据等号右边的初始值自动判断变量类型。
  • 注意:必须初始化,否则编译器无法推导。
  • 代码示例
#include<iostream>usingnamespacestd;intmain(){autoa=10;// 推导为 intautob=3.14;// 推导为 doubleautoc='A';// 推导为 charcout<<a<<" "<<b<<" "<<c<<endl;return0;}
五、逻辑控制(分支与循环)
  • 概念:控制代码执行的流向。
  • 代码示例
#include<iostream>usingnamespacestd;intmain(){intscore=85;// if-else 分支if(score>=60){cout<<"及格"<<endl;}else{cout<<"不及格"<<endl;}// for 循环for(inti=0;i<3;i++){cout<<i<<" ";// 输出 0 1 2}cout<<endl;return0;}
六、函数(封装与复用)
  • 概念:将一段代码打包,方便重复调用。
  • 关键点:返回值、参数列表、函数重载。
  • 代码示例
#include<iostream>usingnamespacestd;// 函数定义:求和intadd(inta,intb){returna+b;}intmain(){intresult=add(10,20);// 调用函数cout<<"Result: "<<result<<endl;// 输出 30return0;}
七、指针与引用(C++的灵魂)
  • 概念
    • 指针:存储内存地址的变量(*解引用)。
    • 引用:变量的别名(&声明),操作引用就是操作原变量。
  • 代码示例
#include<iostream>usingnamespacestd;intmain(){intval=100;// 指针操作int*p=&val;// p 存的是 val 的地址*p=200;// 通过地址修改 val 的值// 引用操作int&ref=val;// ref 是 val 的别名ref=300;// 修改 ref 也就是修改 valcout<<"Val: "<<val<<endl;// 输出 300return0;}
八、基础数据类型速查表
类型关键字描述典型大小
int整数4 字节
float单精度浮点数4 字节
double双精度浮点数8 字节
char字符1 字节
bool布尔值 (true/false)1 字节
long long长整型8 字节

http://www.jsqmd.com/news/670485/

相关文章:

  • 060基于51单片机的FM数字收音机系统电路设计
  • 高级性能优化框架:深度解析《环世界》400%帧率提升技术实战指南
  • 蜘蛛池在 SEO 优化中的作用与合理使用方式
  • 实测fft npainting lama:一键涂抹,AI自动修复老照片和瑕疵,效果惊艳
  • Faceoff:实时跟踪NHL比赛的TUI应用,具备多项实用特性!
  • 百度网盘高速下载终极指南:3步突破限速限制
  • 山东一卡通回收渠道对比:如何选择最划算的方式? - 团团收购物卡回收
  • 055 Zigbee CC2530智能家居宿舍仓库方案
  • 实战指南:3种高效配置ipget分布式文件下载方案深度解析
  • Z-Image-Turbo_Sugar脸部Lora效果展示:低光照环境下Sugar面部细节保留能力
  • 从零搭建神经网络:PyTorch 层堆叠与参数计算全攻略
  • 别再调包了!用纯Java实现朴素贝叶斯(NB),搞懂拉普拉斯平滑与高斯分布处理
  • 视频转PPT神器:3步从视频中智能提取演示文稿
  • 虚拟手柄终极指南:ViGEmBus如何让Windows游戏兼容性达到100%
  • 山东一卡通回收渠道大全:让闲置卡片变现更高效! - 团团收购物卡回收
  • 2026年,成都这家经验丰富的GEO服务公司究竟藏着怎样的服务秘诀? - 红客云(官方)
  • 除了打印SQL,p6spy在SpringBoot里还能这么玩:监控慢查询与连接泄漏
  • 如何5分钟完成QQ空间数据备份:GetQzonehistory终极指南
  • 终极指南:使用Legacy-iOS-Kit让老旧iPhone/iPad重获新生
  • 小红书内容下载实战指南:高效自动化工具从入门到精通
  • 061基于51单片机的百叶窗控制系统设计
  • 清音刻墨惊艳效果展示:支持情感强度标注(兴奋/平静/愤怒)的时间轴
  • 高效DXF图纸自动化生成与批量处理解决方案
  • Linux驱动(4):GPIO子系统
  • 演讲超时?别怕!这个开源PPT计时器让你轻松掌控时间
  • 告别蓝绿滤镜:用Python+OpenCV复现水下图像去雾与颜色校正(附代码)
  • 【Vercel实用Skill】electron 技能
  • gte-base-zh效果深度评测:多领域文本相似度计算对比
  • 新苗5000元经费怎么报?手把手教你搞定浙财国库校内配套经费报销(附发票避坑指南)
  • 闲置山东一卡通如何处理?靠谱回收渠道一网打尽! - 团团收购物卡回收