[英]FILE opening code in C. I need an explanation why this code gives different outputs when run several times
#include <stdio.h>
#include <stdlib.h>
int main(void){
FILE *fp = fopen("temp.txt", "we");
printf("%p\n", fp);
return 0;
}
此代码给出以下不同的输出:0x19ee260 0x1ef9260 0xbde8260。 . . 我需要关于 memory 的解释。
这是由于地址空间布局随机化。 fopen()
返回的指针指向的FILE
结构在进程的堆memory中,ASLR意味着每次运行程序时堆的位置都会不同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.