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

C语言学习笔记02

int main() {
system ("chcp 65001");//强制把 Windows 控制台编码改成 UTF-8,专门解决 C 语言 printf 中文乱码。
int num1 = 10;//(整句为变量,其中int为**数据类型关键字**;  num1为**变量名/标识符**;  10为**储存值**)
int num = 10;
printf("a=%d,A=%d\n", num1, num);
int stuentAge = 21;
printf("学生年龄=%d\n", stuentAge);
return 0;//return为控制语句关键字}       

变量的作用域

类型 定义位置 能用范围 特点
块作用域 函数内部 {} 里 只在当前 {} 里 用完就销毁
文件作用域 所有函数外面 整个文件所有函数 全程有效

关于int整型后缀 (浮点类型同理)
因为编译器默认讲赋值数字当成 int,不是 long!
所以:数字一旦超过 int 能存的最大值,不加 L 就会炸!
先记住两个关键范围(必须背)
int 范围:-21 亿~21 亿; long 范围:-92 亿亿~92 亿亿(比 int 大得多)
比喻:
比喻
int = 小杯子(最多装 21 亿)
long = 大杯子(能装 92 亿亿)
你现在要装 22 亿的水:即先用小杯子装 22 亿 → 装不下 → 洒了 → 数字坏了 → 再倒进大杯子也没用!

GBK 中文全称:汉字内码扩展规范
英文:Chinese Internal Code Specification
缩写含义
G = Guo(国) B = Biao(标) K = Kuo zhan(扩展)

重新加载 CMake = 刷新项目就像浏览器刷新网页一样。
CLion 抽风、标红、报错、不能运行 → 先 reload CMake 项目!这是解决 CLion 各种奇怪问题的 万能第一步

C语言常用占位符(printf/scanf 用)

一、整型占位符(最核心)

占位符 含义 示例 备注
%d 有符号十进制整数(int printf("%d", 10);10 最常用,普通整数都用它
%i 有符号十进制整数(和%d等价) printf("%i", -5);-5 几乎和%d通用,scanf中略有区别
%u 无符号十进制整数(unsigned int printf("%u", 4294967295U);4294967295 专门打印无符号数
%ld 长整型(long printf("%ld", 123456789L);123456789 打印long类型
%lld 长长整型(long long printf("%lld", 9999999999LL);9999999999 打印超大整数用它
%hd 短整型(short printf("%hd", 32767);32767 很少用,了解即可

二、浮点型占位符

占位符 含义 示例 备注
%f 浮点数(float/double printf("%f", 3.14);3.140000 默认保留6位小数
%.2f 保留2位小数的浮点数 printf("%.2f", 3.1415);3.14 最常用,控制小数位数
%lf double 专用(scanf中必须用) scanf("%lf", &d); printf%f%lf通用
%e 科学计数法 printf("%e", 12345.0);1.234500e+04 打印超大/超小数用

三、字符与字符串占位符

占位符 含义 示例 备注
%c 单个字符(char printf("%c", 'A');A 打印单个字母/符号
%s 字符串(char[] printf("%s", "hello");hello 打印一句话/文本用它

四、进制与其他常用占位符

占位符 含义 示例 备注
%x 十六进制(小写) printf("%x", 15);f 打印十六进制数
%X 十六进制(大写) printf("%X", 15);F %x的区别是字母大小写
%o 八进制 printf("%o", 10);12 很少用,了解即可
%p 地址/指针 printf("%p", &a);0x7ffe... 打印变量的内存地址
%% 打印一个 % 符号 printf("%%d");%d 想输出%时用它

五、新手必记的万能规则

  1. 普通整数(int)→ 用 %d
  2. 小数(float/double)→ 用 %f,想控制小数位就加 .2f
  3. 单个字符 → %c,字符串 → %s
  4. scanfdouble 时必须用 %lfprintf%f 就行

char的本质

  • char 本质根本不是 “字符类型”
  • char 本质就是「1 字节的整数」!
    两条铁规则
  • char 既能存字符,也能存数字(数字-128-127)
  • 字符 = 就是一个 ASCII 编号数字

char写不写signed 和 unsigned 修饰有什么区别
单纯 char:编译器自己决定(不同编译器不一样)
单纯 char:

  • Windows / 主流编译器:默认是 signed char
  • 部分 Linux / 嵌入式编译器:默认是 unsigned char
    signed char:(\boldsymbol{-128\sim127}) 有负号
    unsigned char:(\boldsymbol{0\sim255}) 无负数
    char 是墙头草,编译器说了算
    只存字符 → 直接 char
    存大数 / 硬件 → unsigned char
    要负数 → signed char

char还可以转义字符
image

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

相关文章:

  • 避坑指南:CoCo转YOLOv8-Pose数据集时,你可能会遇到的5个典型错误及解决方法
  • 用闲置的RAX3000M路由器搭建Maven私服,给团队项目共享自研组件(附FTP+HTTP配置)
  • 紧急预警!某国产RISC-V MCU的__attribute__((section(“.init“)))失效导致驱动未加载——3分钟定位法+GCC链接脚本修复模板
  • 新手福音:在快马平台用ai生成第一个arduino oled显示程序
  • Switch第三方控制器终极指南:用sys-con解锁Xbox和PlayStation手柄
  • TOLEBI框架:双足机器人容错运动控制技术解析
  • 金融数据API接入:从实时行情到智能交易的技术架构与实践
  • 如何快速清理Windows驱动垃圾:终极系统优化神器Driver Store Explorer完全指南
  • 从一次线上故障复盘说起:深入理解Python requests的keep-alive与连接池管理
  • 别再手动连信号了!SystemVerilog Interface保姆级教程,从Verilog迁移到SV的避坑指南
  • MAA明日方舟助手:解放双手的智能游戏自动化解决方案
  • BetterGI:原神玩家解放双手的终极AI辅助工具,效率提升300%!
  • ps设计稿秒变可交互网页,快马平台助力快速原型开发
  • OneMore:免费开源插件,让OneNote效率提升300%的终极指南
  • 如何快速掌握NHSE:动森存档编辑器的完整指南
  • 魔兽争霸3现代化优化工具:让你的经典游戏焕发新生
  • 设计一个基于 OpenClaw 的 AI 智能体来辅助交易
  • OneMore插件终极指南:免费解锁160+功能,彻底革新你的OneNote体验
  • 【信息科学与工程学】【财务管理】第四十六篇 企业资本运作05
  • 使用 Node.js 和 Taotoken 构建一个多模型对话代理服务
  • Visual C++运行库一键修复:告别程序启动失败的终极方案
  • Matrix ChatGPT机器人部署指南:私有化AI助手集成实践
  • 别再死磕公式了!用Arduino+AS5600编码器,手把手带你实现一个简易的FOC电机驱动
  • Arm Performix性能分析工具:原理、配置与优化实战
  • 微信小程序支付踩坑实录:从‘total_fee’缺失到签名验证失败,我的UniApp填坑全记录
  • 强化学习目标导向训练:原理、实践与优化
  • TI C2000开发避坑指南:SysConfig生成代码导致CMD文件内存溢出怎么办?
  • DoL-Lyra终极整合包:5分钟掌握一键美化游戏体验
  • MySQL触发器可以实现自动审计记录吗_MySQL触发器审计实现方案
  • 终极指南:如何解决RimSort中SteamCmd下载失败的权限问题