调试操作系统时,进行了以下更改以消除错误:
struct proc {
int p_status;
};
int *status;
struct proc *childP;
之前:
*status = childP->p_status;
我将其更改为:
status = &childP->p_status;
然后,操作系统运行良好。但是据我了解,前后的工作方式不一样吗?它们之间有什么区别?谢谢!
最佳答案
*status = childP->p_status;
表示:用status
值分配childP->p_status
指向的存储位置status = &childP->p_status;
表示:将status
设置为指向childP->p_status
的存储位置
关于c - c中int指针的用法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20292411/