C++ 指针遍历数组

  • 1.概念:

    指针是程序数据在内存中的地址,而指针变量是用来保存这些地址的变量。

  • 2.demo代码如下:

#include <iostream>

using namespace std;

void len_fun(char *str, int length);

/**
 * 指针练习
 * @return
 */
// 要调用上面定义函数的主函数
int main ()
{
    int num1 = 1;
    int num2 = 2;

    int *const p = &num1;
    int *p2 = &num1;
    char *p3 = nullptr;
    bool isequal = p == p2;
    *p = 3;//这儿是常量指针,不可以指向其他,但可以改变指向地址的值

    cout << *p <<endl;
    cout << isequal << endl;
    //cout << "p3:" << p3 << endl;

    int arr[]={1,2,3,4,5,6,7,8,9,0};
    int *p4 = &arr[0];//此时p是一个指向数组首元素的指针
    cout << "arr:" << arr << endl;
    cout << " p4:" << p4 <<endl;

    char arr2[] = {"13579AaBBCc"};
    len_fun(arr2, sizeof(arr2));


    return 0;
}

/**
 * 参数为指针类型的,指向数组瘦元素,内部要遍历内容需要传递数组长度进去
 * @param str 
 * @param length 
 */
void len_fun(char *str, int length)
{
    int m = sizeof(str);
    char *p6 = str;
    for(int i = 0; i < length; i++){
        printf("%c ", *(p6 + i));
    }
    printf("\n");
    printf("length of str:%d\n",m);//m是指针类型长度
}
  • 3.输出如下:

D:\C++Test\cmake-build-debug\C__Test.exe
3
1
arr:0x61fdc0
p4:0x61fdc0
1 3 5 7 9 A a B B C c
length of str:8
Process finished with exit code 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值