0
这更大的是从考试的一个问题:
这段代码总是工作?
的答案是: 的if语句检查“STR”的虚拟地址指向一个页面的开始,才把的strcpy应该被执行,它会工作,因为整个页面是此进程访问。
任何人都可以请解释我这个模棱两可的答案?非常感谢你strcpy的大小大于的malloc
int main() {
char *str ;
str = (char*) malloc (sizeof(char)*4);
if (((int)str) & 0x00000FFF) != 0) return 0;
strcpy (str ,"1234567890") ;
printf ("str=%s", str) ;
return 0;
}
但if条件实际检查的是什么? – Rawhi