ysyx:0005:Ccode2binary

[ANNONCEMENT]
ysyx的课程规范实则是不鼓励分享的,发在这里其实只是做一个类似个人存档的东西或者跟没参加的同学分享,再加上我比较菜,所以参加这个课程的同学慎入。
预处理
=文本粘贴
编译
词法分析
注意回忆和SICP的解释器是非常相似的。
语法分析
SICP同上
语义分析
SICP同上
中间代码生成
优化
目标代码生成
binary
汇编
链接
动态链接机制??
执行
#####通过日志观察工具的行为
1 | clang - fsyntax-only -Xclang -ast-dump a.c |
C语言标准有一些是符合一定范围即可
- 有一些 未指定行为(Unspecified behaviour)
在认可情况下都可以随便选择。 - 还有一些 事先定义行为(Implementation-defined behaviour)
在一定环境下,选择必须是一定的。 - 未定义行为(Undefined behaviour)
完全不符合标准,甚至都不能用对错来形容。
2个经典问题
- 2147483648 问题
- char 的类型提升问题
- Post title:ysyx:0005:Ccode2binary
- Post author:Jackcui
- Create time:2023-07-06 21:19:42
- Post link:https://jackcuii.github.io/2023/07/06/ysyx0005/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
Comments