/** 只读变量和常量 const 只读 const int a; int const a;//同上面的代码行是等价的,都表示一个常整形数。 int *const a;//const具有"左结合"性,即const修饰*,那么,不难理解,该句表示一个指向整数的常指针,a指向的整数可以修改,但指针a不能修改。 const int *a;//与下面的这一行等价,根据"左结合"性,const修饰的是(*a),也即是一个整数,所以,这两句表示指针指向一个常整数。 int const *a; int const *a const;//根据"左结合"性质,第一个const修饰(*),第二个const修饰(a),因此,这句话表示一个指向常整数的常指针。 **/ #include <stdio.h> #define PI 3.145926145926 int main(void){ const int a = 10;//不能修改的常量 常数,不变的 int const b = 2.3E2;//不能修改等同上面的 2*10的2次方 E以10为底数的幂 //可以用指针修改变量 //int *p = &a;//指针可以改 //*p = 55; //printf("%07.3f\n",PI); //值保留3位小数;包括小数点共7位;不够前补0 //int c = sizeof(float); // int float long 占4个字节 32位 char c = ‘a‘; //一个字符或者字母占用1个字节8个二进制位 最小的是1-255 //c = sizeof(c); printf("%d",c);//97输出的是ascii 01100010 存的是a 也就是说 字符也是用二进制存取的 return 0; }