引入,c++的&符号
知识点总结:
1.在C++中,
&符号确实有多重含义,其中之一是取地址运算符。当&用在变量前面时,它返回该变量的内存地址。
int x = 10; int* ptr = &x; // ptr 现在指向 x 的内存地址2.在C++中,如果你想要通过引用(而非指针)传递一个变量给函数,你也会在函数参数中使用
&。但是这是引用的声明,而不是取地址操作。
#define _CRT_SECURE_NO_WARNINGS #include //用&修改传入函数的变量的值 void modify_num( int &a) { a = a + 1; } int main() { int a=3; printf("%d\n",a); modify_num(a); printf("%d\n", a); return 0; }3.如果你正在使用C风格的I/O函数(如
scanf),那么你需要使用&来传递变量的地址给这个函数,因为scanf需要知道在哪里存储输入的值。
#include int main() { int num; scanf("%d", &num); // 使用 & 来传递 num 的地址给 scanf printf("You entered: %d\n", num); return 0; }
与指针以及malloc函数串用实现输入字符串并打印出来
#define _CRT_SECURE_NO_WARNINGS #include #include void modify_p( char * &p) { int size; printf("请输入要输入的字符串长度:"); scanf("%d",&size); char c; scanf("%c", &c); p=(char*)malloc(size); printf("请输入字符串:"); fgets(p,size,stdin); } int main() { char* p; modify_p(p); puts(p); free(p); return 0; }结果
结束~