·数组中指针的应用
For example:
#include <iostream> using namespace std; int main() { int arr[9] = { 1,2,3,4,5,6,7,8,9 }; int* p = arr; for (int i = 0; i < 9; i++) { cout << *p << endl; cout << p << endl; p++; } }
输出:
第一次的*p返回的是arr的首地址,随后运用的p++将p向后移动了4个字节,输出下一个元素。从而遍历数组。
·函数中指针的应用
For example:
#include <iostream> using namespace std; int a, b; void swap_new(int* a,int* b) { int temp=*a; *a = *b; *b = temp; } int main() { int a = 1; int b = 2; swap_new(&a, &b); cout << a << endl; cout << b << endl; }
输出:
神奇!看来地址传递是可以变换实参的。举个例子,值传递就好像两个人分别去对方的房间,主人并没有改变,而地址传递就相当于这两个人的房间的主人调换了。