黑马程序员技术交流社区

标题: C语言类型修饰符总结 [打印本页]

作者: 请叫我焦卷卷    时间: 2015-9-27 17:13
标题: C语言类型修饰符总结
1、int float double char [signed unsigned short long (long long)]修饰int时,都可省略int,
2、作用:说明一个变量的类型,便于区分及优化内存

3、
signed -->能修饰    int和char           %d
unsigned -->能修饰  int 和char          %u
short   -->能修饰   int                 %d     在16/32/64位编译器下都是2个字节
long  ---->能修饰   int和 double(%Lf)   %ld    16/32--4字节  64--8字节
long long -->能修饰 int                lld%   在16/32/64位编译器下都是8个字节

**浮点型只有有符号类型,没有无符号类型
**signed 和 unsigned都不能修饰float 和 double 浮点型



4、类型说明符可以累加,如果省略了基本数据类型,那么基本数据类型是int
5、注意:long short long long 等不可同时使用
6、有符号的char类型是(-128~127)signed char (signed可省略)
    无符号的char类型是(0~255)   unsigned char


#include <stdio.h>
int main(){
   //1、省略int
    short a = 2;//short int a
    printf("%d\n",a);
    long  b = 8;//long int b
    printf("%ld\n",b);
    long long c = 8;//long long ing c
    printf("%lld\n",c);

    //2、long 能修饰double
  long double d = 8;//正确 8.000000
    printf("%Lf",d);

    long long double e = 8;//错误 long long 不能修饰double
    short double f = 2;//错误  short 不能修饰double

    short float g = 2;//错
    long float h = 8;//错
    long long float i = 8;//错

    short char ch = 0;//错误
    long char ch1 = 0;//错误
    long long char ch2 = 0;//错误

    //3、类型说明符可以累加,如果省略了基本数据类型,那么基本数据类型是int

    signed long r = 0;//== signed long int
    unsigned long r1 = 0;// == unsigned long int
    long e = 0;//== signed long int
    unsigned short o = 0;//unsigned short int
    unsigned long long  q = 0;// unsigned long long int


    //4、注意:long short long long 等不可同时使用
    long short a3 = 0;//错误

    //5、 有符号的char类型是(-128~127)
       //无符号的char类型是(0~255)
    unsigned char cc = -4;
    printf("%u\n",cc);//252

    char cc1 = 255;
    printf("%d\n",cc1);//-1

    char cc2 = 127;
    printf("%d\n",cc2);//127

    //**signed 和 unsigned都不能修饰float 和 double
    signed float f1 = 0;//错
    unsigned float f2=0;//错
    signed double d1 = 0;//错
    unsigned double d2 =0;//错



    return 0;
}



作者: 许庭洲    时间: 2015-9-28 13:58
值得学习ing!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2