我已经尝试了许多教程,并且变得更加困惑。因此,请教给这个菜鸟最简单的答案。如果可能的话,那就坚持这个问题……我信息超载:)
首先主要功能
main(){
int y=0;
display(&y);
}
现在的功能
int display(int* x){
//do something depending on different values of x
}
一种情况是以下情况:
“如果未指向任何变量,即,如果变量的地址为NULL,则您的函数会将变量的值设置为零。”
现在我需要了解显示功能
if (x==NULL)
*x=0;
现在这是我要坚持的地方...
-如果我使用display(NULL)调用函数;我在Visual中得到以下错误
“BTP 300 A1.exe中0x00C84036的未处理异常:0xC0000005:访问冲突写入位置0x00000000。
如果函数的地址为null,如何从y中存储一些值?
还是这个问题是错误的,它应该将所述值存储在指针变量所指向的地址中,所以该值为空,即y = Null ???
如果int * z是一个空指针,则z指向的地址的值是多少以及所指向的地址中存储的值是什么?
最佳答案
这很可能意味着:
int value_to_display = x? *x: 0;
// do something with value_to_display
即要求将空指针与指向零的指针相同。