首页 > 编程知识 正文

c语言赋值语句规则,java运算符优先级

时间:2023-05-06 04:11:14 阅读:40444 作者:4198

a宣言从其名称读取,按优先顺序依次读取。

b的优先顺序从高到低依次为:

B.1声明中括在括号内的部分

B.2后缀运算符:括号(表示是函数,括号) []表示是数组;

B.3前缀运算符:指向“.”的指针

如果类型说明符(int、long等)紧跟const和/或volatile关键字,它会影响类型说明符。 否则,const和(volatile )很重要

字作用于左邻右舍指针的星号。

例如,char*const*(*next ) );

首先,看到变量名“next”,注意到它被括在括号中。

然后,括号中的内容作为整体出现“next是指向.的指针(即,next是指针)”。 剩下的char * const * (

然后,根据优先级,高于(),即next为char * const*; 剩下的: char * const*

然后,const限定后面的*,不能改变指针指向的地址的内容,也就是返回“只读char *”指针; 剩下的char*

最后,返回一个指向只读char的指针。

总之,next是返回指向只读char的指针的函数指针。

char * const * p; p是指向指针的指针,const限定*p。 也就是说,*p的内容不能变更。 p可以指向其他地址,但不能在*p中更改*p的值。 也就是说,*p=.*p=. *p为只读char*类型,解引p两次得到char类型,**p=. 综合起来,p=…; **p=; 但是,*p=;

char a[]='abcdefg ';

char b[]='hijklmn ';

char *p1=a;

char * const * p2;

p2=p1; //正确

*p2=p1; //错误

**p2='h '; //正确

返回p2; //注意这里也许可以编译,但仍然有错误。 p2是指针p1的地址,指针p1是局部变量,在函数调用返回时废弃

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。