![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
恬毅
道阻且长,行则将至;行而不缀,未来可期
展开
-
06C语言sizeof strlen编译期函数
sizeof sizeof是编译期,由编译器进行语法分析的时候得出来的结果值,不生成任何机器指令 代码验证 看下如下代码: #include <stdio.h> struct sdshdr { int len; int free; char buf[]; }; int main(void) { printf("%d\n", sizeof(struct sdshdr)); return 1; } 执行编译: gcc -S -m32 -fno-asynchronous-unwin原创 2022-05-31 14:01:21 · 279 阅读 · 0 评论 -
C语言中的代码重定位
代码重定位 demo.c: #include <stdio.h> int main() { sum(33,33); return 1; } sum.c: int func(int a, int b) { return 1; } gcc -c sum.c 将机器码反汇编: objdump -d sum.o 得到如下代码: 0000000000000000 <sum>: 0: 55 push %rbp 1:原创 2022-05-25 17:29:40 · 382 阅读 · 0 评论