程序设计B指针总结1

1.指针基本概念理解

对于指针我先说一下我的基本理解:

//定义指针变量
char str1[30]="123";
char*p=str1//指向str1的首地址

使用注意:指针必须指向一个变量之后,才能对其指向的对象进行操作。

2.用指针操作储存单元(一维数组)

    //用指针操作一维数组
    double b[20];
    double* p2;
    p2 = b;//指向b数组的首地址
    *(p2 + j) = b[j];
    for (int i = 0; i <= 20; i++) {//用指针遍历该数组
        cout << *p2;
        p2++;
    }

3.指针中的重要运算

1.取地址运算符:&

int a;
int *p;
p=&a;//&为取地址运算符
//直接访问数据
a=10;
cout<<a<<endl;
//间接访问
*p=10;
cout<<(*p)<<endl;//用指针访问内容单元

2.算术运算

p为指针变量。

p++||p--均指向下一个数据位置或者说指向上一个数据位置。

3.关系运算

主要是指针位置的前后的一个关系。

4.通过指针进行的一些操作

(1).求字符串长度

#include <iostream>
using namespace std;
int main()
{
    char str[100];
    char* p;
    int n=0;
    p = str;
    cin >> p;
    n = 0;
    while (*p = '\0') {
        n++;
        p++;
    }
    cout << n << endl;
}

5.操作二维数组

b=&b[0];
*b=b[0];
*(b+i)=b[i];//一维行里的取值
//记录行首元素地址
int b[10][10];
b[i]=&b[i][0];
b[i]+j=&b[i][j];
*b[i]=b[i][0];
*(b[i]+j)=b[i][j];//取该位置内容
//引用二维数组首地址进行取值
int b[10][10];
int(*p)[10];
p=b;
*(*(p+i)+j)=b[i][j];

6.指针作为参数

7.指针传参

        剩余内容持续更新...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钟一淼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值