Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 指向int转换编译器的指针有问题吗?_Objective C_Pointers_Type Conversion_Declaration - Fatal编程技术网

Objective c 指向int转换编译器的指针有问题吗?

Objective c 指向int转换编译器的指针有问题吗?,objective-c,pointers,type-conversion,declaration,Objective C,Pointers,Type Conversion,Declaration,因此,我正在使用Xcode编写一些小型Objective-C应用程序,我有一行代码: int * foo; foo = 5; NSLog(@"does it work... %i", foo); 现在它的编译和运行都很好,但我想知道,为什么它会给我一个警告,“不兼容的整数到指针赋值…”?我认为上面的代码告诉它将foo指向的任何对象设置为5,而不是将指针本身设置为5。有人能帮我解决这个问题吗?这段代码是偶然工作的:int指针恰好有足够的空间来容纳一个整数值,NSLog将指针重

因此,我正在使用Xcode编写一些小型Objective-C应用程序,我有一行代码:

  int * foo;
    foo = 5;
    NSLog(@"does it work... %i", foo);

现在它的编译和运行都很好,但我想知道,为什么它会给我一个警告,“不兼容的整数到指针赋值…”?我认为上面的代码告诉它将foo指向的任何对象设置为5,而不是将指针本身设置为5。有人能帮我解决这个问题吗?

这段代码是偶然工作的:
int
指针恰好有足够的空间来容纳一个整数值,
NSLog
将指针重新解释为一个整数,但程序仍然不正确

指向
int
的指针应分配一个整数变量的地址,如下所示:

int *foo;
int var;
foo = &var;
现在,您可以通过指针分配变量:

*foo = 5;
也可以通过指针或变量读取值:

NSLog(@"%d %d", *foo, var);

这段代码的工作是偶然的:
int
指针恰好有足够的空间来容纳整数值,
NSLog
将指针重新解释为整数,但程序仍然不正确

指向
int
的指针应分配一个整数变量的地址,如下所示:

int *foo;
int var;
foo = &var;
现在,您可以通过指针分配变量:

*foo = 5;
也可以通过指针或变量读取值:

NSLog(@"%d %d", *foo, var);