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

再探C语言(1)

温馨提示
学C语言就像玩《掘地求升》——你以为懂了语法就能通关?
不!编译器会用铁锤教你做人!(╯‵□′)╯︵┻━┻

🐱Part 1:sizeofの跨平台迷惑行为

Q1. 不同环境下sizeof(int)的结果

运行环境结果(字节)本喵吐槽
9位单片机2这架构比我爷爷的算盘还古老
16位单片机2int和short在此拜了把子
32位x86 CPU4经典永不过时
64位x86 CPU4Intelの祖传秘方
32位Windows74微软:4是我的幸运数字
64位Windows74说好的64位呢?(╯°□°)╯︵┻━┻

冷知识
C标准规定sizeof(int) >= sizeof(short),具体大小全看编译器心情!
所以当同事说"我的int有8字节"时——他可能来自火星🌍


🐱Part 2:C语言概念の灵魂拷问

Q1. 三大命名法王の区别

类型特点作死案例
标识符程序员自创的变量名int 玛卡巴卡 = 233;
关键字C语言官方认证的VIP词汇if(else == 女朋友)
预定义标识符编译器自带的工具人#define 爱情 404

Q2. 运算符の抢座规则

  • 左结合:像食堂打饭排队,从左往右刮油水(a + b + c → (a+b)+c
  • 右结合:像霸道总裁壁咚,从右往左强势操作(a = b = 520 → a = (b=520)

Q3. 内存世界の户口调查

术语人话翻译迷惑行为
左值有房产证的内存地址int *p = &单身狗;
右值流浪的临时数据1314 = 520 + 794;
副作用函数偷偷改全局变量while(熬夜){头发--;}
未定义行为编译器の薛定谔警告arr[3] = 4;(可能召唤神龙)

🐱Part 3:编译过程の双标现场

语法检查 vs 语义检查

检查类型类比场景经典翻车案例
语法检查语文老师纠错别字inta a; → “你字都不会写?”
语义检查女朋友查聊天记录int age = "永远18"; → “你当我是傻子?”

终极总结(快拿去装X)

// 表达式 vs 语句 vs 代码块
printf("%d", 1+1);    // 表达式:产出一个值
printf("喵");         // 语句:带分号的完整动作
{ system("shutdown"); } // 代码块:搞事情全家桶

相关文章:

  • 如何利用iOS应用内事件提升订阅类应用表现?
  • Electron打包文件生成.exe文件打开即可使用
  • Deflate和Gzip压缩在HTTP响应中的作用与实现
  • H3C网络设备配置基础(HCL基础实操)1
  • #网页内容http协议自动被转成https协议#
  • Python实战(1)-GUI文本编辑器
  • Linux vim mode | raw / cooked
  • (C语言)将整数转化为二进制(转化二进制教学)
  • 本地部署github上资源可能出现问题总结
  • C++: vector
  • 【HarmonyOS Next】鸿蒙中App、HAP、HAR、HSP概念详解
  • C++右值引用与移动语义
  • PyTorch系列教程:使用预训练语言模型增强文本分类
  • 【QT】】qcustomplot的初步使用二
  • RedoLog
  • Java:读取中文,read方法
  • envoy 源码分析
  • python中序列操作和中高级用法
  • VSCode远程连接服务器 免密登录配置
  • AI小白的第七天:必要的数学知识(四)
  • 首映|“凤凰传奇”曾毅:拍电影,我是认真的
  • 打造全域消费场景,上海大世界百个演艺娱乐新物种待孵化
  • 美航母一战机坠海,美媒:为躲避胡塞武装攻击,损失超六千万美元
  • 从腰缠万贯到债台高筑、官司缠身:尼泊尔保皇新星即将陨落?
  • 法治日报调查直播间“杀熟”乱象:熟客越买越贵,举证难维权不易
  • 太好玩了!坐进大卫·霍克尼的敞篷车进入他画笔下的四季