标签: c pointers atmelstudio
我已经将更大的错误问题缩小到看似简单的问题。
uint8_t *vald; *vald=46;
这对代码会导致我的平台出现硬故障(Atmel Studio,GCC)
我做错了什么?
答案 0 :(得分:1)
vald未初始化,这意味着它是零或未定义,具体取决于编译器是否清除局部变量的堆栈帧。写入地址零始终是错误,写入未定义的地址几乎总是错误。
*((uint8_t*)0) = 46;