找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1583|回复: 8
打印 上一主题 下一主题
收起左侧

初学者求c语言解析int**p、**(int)p、(int*p)

[复制链接]
跳转到指定楼层
楼主
ID:970698 发表于 2021-10-20 00:29 来自手机 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
int**p、**(int)p、(int*p)分别什么含义
太晕了呀
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:230742 发表于 2021-10-20 03:24 | 只看该作者
*P是指针的意思,多看看C语言关于指针方面的资料.
回复

使用道具 举报

板凳
ID:568502 发表于 2021-10-20 08:05 | 只看该作者
二级指针、
回复

使用道具 举报

地板
ID:568502 发表于 2021-10-20 08:05 | 只看该作者
二级指针、强制类型转换、一级指针
回复

使用道具 举报

5#
ID:970698 发表于 2021-10-20 10:07 来自手机 | 只看该作者
981025 发表于 2021-10-20 08:05
二级指针、强制类型转换、一级指针

好的谢谢
回复

使用道具 举报

6#
ID:429003 发表于 2021-10-20 10:44 | 只看该作者
int**p 二级指针,后面两个写法,语法规则上应该是有抒写错误的!
对于指针,只要理解了内存存储关系,也很好理解!
记住一点,无论是指针、数组名还是变量名,甚至是函数名称,都只是代表内存地址空间的一个地址号而已。只是对应地址号的内存位置,存储的数据内容代表意义不同而已,可能是一个用于计数的变量数值,又或者是用于访问另一个变量等的地址号。这些存储的内容原则上可以任意转换,在语法上表示就是所谓的强制类型转换。

另外,指针可以通过变换抒写方式,提高可读性。
例如:int data[10] ;   int *pData;   当pData = data时, pData[0] 等价于 data[0]
回复

使用道具 举报

7#
ID:970698 发表于 2021-10-20 10:48 来自手机 | 只看该作者
xstong 发表于 2021-10-20 10:44
int**p 二级指针,后面两个写法,语法规则上应该是有抒写错误的!
对于指针,只要理解了内存存储关系,也 ...

好的谢谢
回复

使用道具 举报

8#
ID:411590 发表于 2021-10-20 16:09 | 只看该作者
多级指针的意思
回复

使用道具 举报

9#
ID:976455 发表于 2021-10-31 17:14 | 只看该作者
#include<stdio.h>
#include<stdlib.h>
int main(){
    int *z(int *p); //指针作为函数参数
    int **p;  //指向指针的指针
    //**(int)p  首先括号与int结合 对p进行强制转换 此时就是一个整型变量 但是在变量前加*运算符 是错误的
    int b = 0;
    int *c;
    c = &b; //c->b
    p = &c; //p->c
    z(c);
    printf("%d\n",b);
    printf("%d\n",**p);
    return 0;
}
int* z(int *p){
    *p = *p + 1;
    printf("指针作为函数参数:%d\n", *p);
    return p;
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表