【c库字符串反汇编分析】你会看到针对汇编的代码如何快速查看C 汇编的代码cfree?默认的调试器是gdb 。调试运行这段代码,观察anti-汇编的结果,注意汇编的语句 , 将ebp8指向的内存地址作为参数压入堆栈(即位字符数组st的起始地址)调用scanf()函数,从连接处的语句,我们知道ebp在执行main函数之前保存栈顶地址 , 我们知道局部变量是,此时,对于字符数组st,虽然我们声明其长度为5个字节,但实际上编译器已经为其预留了9个字节的空间(见汇编语句) , 所以当字符串的长度小于9时不会有问题,当大于等于9时,会在字符末尾添加一个结束标志 \0。
1、c语言奇怪的问题好像没有用到数组!因为st可以代表数组的地址 。楼上说的有道理!输出时不需要运算符“