C中的声明,表达式?

C语言下 声明不是语句

int a;声明未初始化,虽然是分号结尾,但是不是语句

int a=1;声明并初始化,也不是语句

a=1;这是一个赋值表达式语句

 

表达式:C语言里几乎处处是表达式,一个常量,一个变量,一些运算符和操作数的组合,都是表达式。

表达式都有值,但是不一定会求值,也就是表达式一般两个作用:用于求值或者不求值表示对象(变量),函数

int a=1; //这里的1是表达式,对表达式1求值,并初始化给变量a

1;         //这里的1是表达式

a;        //这里a也是表达式

a=1;    //a和1都是表达式,左边a不会求值,表示变量a,表达式1求值 赋值给变量a

int* p=&a;  //a是表达式,不进行求值,表示变量a,&a是表达式进行求值,获取指针初始化变量p

a=*p;  //p指针变量是表达式,求值获取指针,对指针进行*运算,得到表达式的值1

 

posted @ 2023-12-31 19:03  自由小菜园  阅读(14)  评论(0编辑  收藏  举报