【C++自学笔记】指针基础(三)-数组、函数中指针的应用

·数组中指针的应用

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;
}

输出:

神奇!看来地址传递是可以变换实参的。举个例子,值传递就好像两个人分别去对方的房间,主人并没有改变,而地址传递就相当于这两个人的房间的主人调换了。

猜你喜欢

转载自www.cnblogs.com/coder106/p/12944373.html
今日推荐