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