#include "stdio.h"
void Square(int num, int *myPointer);
int main(int argc, const char *argv[]) {
int originalNum = 5;
Square(originalNum, &originalNum);
printf("%i\n", originalNum);
return 0;
}
void Square(int num, int *myPointer) {
*myPointer = num*num;
}
当originalNum是int时,我不明白如何传入& originalNum作为指针参数。谢谢!
答案 0 :(得分:1)
originalNum
是一个int。 &originalNum
是指向originalNum
的指针,因此是指向int或int *
的指针。
简单来说,&originalNum
是在内存中分配originalNum
变量的地址。因此,当您通过&originalNum
时,您不会传递5
(originalNum
的值)。而是传递存储此5
的地址。
答案 1 :(得分:1)
&
表示:“地址”。 originalNum
是一个int,因此&originalNum
是int*
(指针)。
答案 2 :(得分:0)
originalNum
是一个int,&originalNum
是它的地址。这是int*
类型。
答案 3 :(得分:0)
originalNum是一个int, & originalNum是指向int的指针 运营商&获取originalNum的地址,因此它创建一个指针。