cpp c++summary笔记 复杂类型 “right-left” rule
创始人
2024-05-30 00:55:30

复杂类型 “right-left” rule

       先向右走在向左走,循环往复,右侧的终止为看到右括号,右中括号,左侧为左括号,指针(或其他int等)。

符号读作
*指向AA的指针(总在左侧)
[]容纳AA的数组(总在左侧)
()返回AA的函数(总在右侧)
int * (* (*fp1) (int) ) [10];
开始fp1主体
右括号终止
int∗(∗(∗fp1)(int))[10];int ^* (^* (^ {\color{red}*}fp1) (int) ) [10];int∗(∗(∗fp1)(int))[10];fp1是个指向AA的指针
int∗(∗(∗fp1)(int))[10];int ^* (^* (^*fp1) {\color{red} (int) }) [10];int∗(∗(∗fp1)(int))[10];指针fp1指向返回BB的函数
int∗(∗(∗fp1)(int))[10];int ^* (^ {\color{red}*} (^ * fp1) (int) ) [10];int∗(∗(∗fp1)(int))[10];指针fp1指向返回指针的函数
int∗(∗(∗fp1)(int))[10];int ^* (^* (^ * fp1) (int) ) {\color{red}[10]};int∗(∗(∗fp1)(int))[10];指针fp1指向返回指针的函数,指针指向一个数组
int∗(∗(∗fp1)(int))[10];int ^{\color{red}*} (^* (^ * fp1) (int) ) [10];int∗(∗(∗fp1)(int))[10];指针fp1指向返回指针的函数,指针指向一个数组,数组中的元素是指针
int∗(∗(∗fp1)(int))[10];{\color{red}int} ^* (^* (^ * fp1) (int) ) [10];int∗(∗(∗fp1)(int))[10];指针fp1指向返回指针的函数,指针指向一个数组,数组中的元素是指针,指针指向int类型
int* p,q;p一个指针,q是一个简单的int
float ( * ( *b()) [] )();b是一个返回指向数组的指针的函数,数组中盛放的元素是指向返回float的函数指针

函数指针

int f(int x) {printf(x);}//函数f就是一个指针(类似数组的名称)
int (*p)(int) = f;//定义函数指针p,用f初始化,调用时 p()

参考与更多

  • https://www.codeproject.com/Articles/7042/How-to-interpret-complex-C-C-declarations

相关内容

热门资讯

锐评|明星网红偷逃税没有护身符 【锐评|#明星网红偷逃税没有护身符#】#流量不是明星网红逃税的通行证#国家税务总局近日披露,今年前1...
并购激励计划遭股东抵制 英美资... 在股东就收购泰克资源(TECK.US)进行表决的前一天,英美资源集团宣布撤销一项高管激励计划决议。上...
欧洲央行放鹰与财政扩张共振 德... 在欧洲央行一位执行委员会高级委员表示,她对欧债市场投资者们押注下一步利率动作将是加息感到“可以接受”...
华润三九:产品益气清肺颗粒首次... 来源:上海证券报·中国证券网上证报中国证券网讯(记者 王乔琪)华润三九12月8日晚间公告,公司药品益...
今晚油价下调 加满一箱92号汽... 本文转自【央视财经】;记者今天(12月8日)从国家发展改革委了解到,12月8日24时新一轮成品油调价...