2022.3.17

编程入门 行业动态 更新时间:2024-10-13 06:13:23

2022.3.17

2022.3.17

//2022.3.17
      //有符号整型:
      //         signed:  有符号(超级不常用,通常省略); int  a = 10;
      //      : int 类型:         %d                      4 字节
      //        int  名 = 值;
      //        short 类型:           %hd                  2 字节
      //        short 名 = 值;   short s1 = 3;
      //        long  类型             %ld                  4 字节
      //        long 名 = 值,   long len = 6;
      //        long long 类型:        %lld                  8 字节
      //        long long  ,名 = 值;  long long 
      // 无符号整型:
      //   unsigned:  无符号   只表示数据量,而没有方向(没有正负)
      //        : int 类型:            %u                   4 字节
      //          unsigend int  名 = 值;
      //          unsigned int a = 40;
      //        short 类型:             %hu              2 字节
      //          unsigend  short 名 = 值;  
      //          unsigend  short s1 = 3;
      //        long  类型                %lu             4 字节
      //        unsigend  long 名 = 值,  
      //        unsigend  long len = 6;
      //        long long 类型:         %llu                 8 字节
      //        unsigend long long  ,名 = 值;  long long 
      //  char  字符类型:
      //       存储一个字符。‘A’、‘a’、‘%’、‘#’、‘0’
      //        格式匹配符:   %c
      //         ‘A’ :  65
      //         ‘a’ : 97
      //         ‘0’ : 48
      //         ‘\n’:  10
      //         ‘\0’:   0
      //        转义字符: ‘\’ 将普通字符转为 特殊意。将特殊字符转为本身意
      //                    ‘\n’和‘\0’
     //     实型(浮点数,小数):
//            float:   单精度浮点型,            4字节
//                      float  =  4.345
//            double :  双精度浮点型            8字节  【默认】
//            unsigned  float  v1 = 4.345;    无符号的 float 数据
//            unsigned  double  v2 = 5.678;   无符号的 float 数据
//            printf("n = %08.3f\n", n);
//            输出的含义为: 显示8位数(包含小数点),不足8位用0填充,并且保留3位小数,对第四位小数四舍五入,

//   实型(浮点型):float、 double
//   实型变量也可以称为浮点型变量,浮点型变量是用来存储小数数值的,在 C 语言中,浮点型变量
//   分为两种:单精度浮点数(flaot)、双精度浮点数(double),但是double 型变量所表示的浮点数,
//   比float 型变量更精确

//  由于浮点型变量是由有限的存储单元组成的,因此只能提供有限的有效数字,在有效位以外的数字
//  将被舍去,这样可能会产生一些误差,
//   不以f 结尾的常量是 double 类型,以f 结尾的常量(如3.14f)是float 类型
// 
//    进制转化 
//   十进制转2进制,      ----除2反向取余法。
//   十进制转8进制,      ----除8反向取余法。
//   十进制转16进制,     ----除16反向取余法。
//     int a = 56,      ---111000
//     int b = 173       ---10101101
//    2进制转10进制。
//     2^10 = 1024
//     2^9  = 512
//     2^8  = 256
//     2^7  = 128
//     2^6  = 64
//     2^5  = 32
//     2^4  = 16
//     2^3  = 8
//     2^2  = 4
// 
// 8进制:
//    8进制转10进制。
//    定义8进制数语法;
//             056:   零开头,每位数0~7之间,   ----46
//             0124:                            ----84
//    8进制转2进制,
//       按421码将每个八进制位展开。
//        056:   5--》   101.   6--》  110.
//                 101110
//        05326:   5 --》  101.  3-- 》  011. 2-- 》  010.  6--》  110
//   2进制转8进制:
//     1 010 111 010 110:    010726
//     自右向左,每3位一组,按421码转换,高位不足三位补0
//     16进制:
//      语法:  以0x 开头,每位 取 0-9/A-F/a-f
//            A -- 10
//            B -- 11
//            C -- 12
//            D -- 13
//            E -- 14
//            F -- 15
//   16 --  10;
//      0x1A;   16+10 = 26
//      0X13F:   15+3x16+256
//   16 -- 2:
//      0x1A:    00011010
//      0x13F:   000100111111
//    2 -- 16:
//     0001 0011 1111:
//    自右向左,每4位一组,按8421码转换,高位不足三位补0
// 总结:
//     int m = 0x15F4;
//     int n = 345;
//     int var = 010011;   // 不允许,不能给变量直接复制, 二进制数据
//    输出格式:
//      %d  %u  %o(8进制)  %x(16进制) %hd  %hu  %ld  %lu  %lld  %llu  %c  %f  %lf
//      %d(十进制的有符号整型)
//      %u(十进制无符号整型)
//      %c(字符型)
//      %s (字符串)
//   
// 存储知识:
//      1 bit位  就是一个   二进制位
//       一个字节   1B = 8bit位
//     int a = 10 --》 1010
//        1KB = 1024B
//        1MB = 1024KB
//        1GB = 1024MB
//        1TB = 1024GB
//   char ch = 'A';
// 
// 源码反码补码:【了解】
//      源码:
//        43  ->  00101011
//       -43  -->  10101011
//      反码:
//       43 => 00101011
//      -43 --> 10101011
//              11010100
//      补码:(现今计算机采用的存储形式)
//       43 -> 00101011            : 正数不变
//       -43 --> 11010101          : 负数,最高位表符号位, 其余取反+1
//   
//     43-27  ==》  43 + -27
//    人为规定: 10000000 --》 -123
// --------------------------------------------------------------------------
// char类型:1字节 8个bit位,数值位有7个。
//     有符号: -2¯7   ---    -2¯7-1   ==   -2¯(8-1)  --  2(8-1) -1
//              --》   -128 ~ 127
//    无符号:  0 ~ 2^8 -1
//              --》 0~255
//    不要超出该数据类型的存储范围
//    short类型: 2字节
//      有符号:-2^15 --- 2^15-1   ==  -2^(16-1)  --   2(16-1)  -1
//              --》  -128 ~ 127
//      无符号:  0 ~ 2^8  -1
//            --》  0~65535
//    int 类型: 4字节         -2^(32-1)  --  2^(32-1)-1
//        有符号:
//              --》  -2147483648 ~2147483648
//        无符号:
//             --》   0~4294967295
//    long 类型: 4字节
//   
// #include <stdio.h>
// int main()
// {
//   char ch 
//    //   符号位溢出会导致数的正负数发生改变
//   ch = 0x7f + 2;  因为:0x7f == 0111 1111 ==127,所以等价于 ch = 127 + 2
//   printf("%d\n", ch);
//    //  0111 1111
//    // +2 后1000 0001 ,这是负数补码,其原码为 1111 1111,结果为 -127,
//   // 最高位的溢出会导致最高位丢失
//   unsigned char ch2;
//   ch2 = 0xff+1; // 因为:0xff == 255 == 1111 1111.所以 等价于 ch2 = 255 + 1;
//   printf("%u\n", ch2);
//   //  1111 1111
//   // +1 后 10000 0000,char 只有8位最高位的溢出,结果为0000 0000,十进制为0,
//   ch2 = 0xff + 2; //因为: 0xff == 255 == 1111 1111.所以 等价于 ch2 = 255 + 2;
//    printf("%u\n". ch2);
//   //     1111 1111
//   //+1后 10000 0001,char 只有8位最高位的溢出,结果为0000 0001,十进制为1,
//   return 0;
// 
// 
// }
// 
// 
// 
//
//#include <stdio.h>
//
//int main()
//{
//    //  传统方式赋值
//    float a = 3.14f;  //或3.14F
//    double b = 3.14;
//
//    printf("a = %f\n", a);
//    printf("b = %lf\n", b);
//
//    // 科学法赋值
//    a = 3.2e3f; // 3.2*1000 = 3200, e 可以写成E
//    printf("al = %f\n", a);
//
//    a = 1000e-3f; // 100*0.001 =0.1
//    printf("a2 = %f\n", a);
//    a = 3.1415926f;
//    printf("a3 = %f\n", a); //结果为3.141593
//
//    return 0;
//}


//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#include <string.h>
//#include <stdlib.h>
//#include <math.h>
//#include <time.h>
//
//int main(void)
//{
//    float m = 3.145555;
//    double n = 4.566545;
//    printf("m = %5.2f\n", m); // 5代表占了几位数
//    printf("n = %08.3lf\n", n); //8代表占了8位数,不足八位用空格填充,
//
//        system("pause");
//    return EXIT_SUCCESS;
//
//}

//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#include <string.h>
//#include <stdlib.h>
//#include <math.h>
//#include <time.h>
//
//int main(void)
//{
//    int a = 0x2C;  //等价 0x2c
//    printf("10进制显示 a = %d\n", a);
//    printf("8进制显示 a = %o\n", a);
//    printf("16进制显示 a = %x\n", a);
//
//    system("pause");
//    return EXIT_SUCCESS;
//}

//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#include <string.h>
//#include <stdlib.h>
//#include <math.h>
//#include <time.h>
//
//int main(void)
//{
//    int a =56;  
//    printf("10进制显示 a = %d\n", a);
//    printf("8进制显示 a = %o\n", a);
//    printf("16进制显示 a = %x\n", a);
//
//    system("pause");
//    return EXIT_SUCCESS;
//}

//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#include <string.h>
//#include <stdlib.h>
//#include <math.h>
//#include <time.h>
//
//int main(void)
//{
//    char ch = 127 + 1;    //-128 -- 127
// 
//     01111111
//            1
//     --------
//     00000000  -128
//    printf("ch = %d\n", ch);
//
//    system("pause");
//    return EXIT_SUCCESS;
//}

//#define _CRT_SECURE_NO_WARNINGS
//#include <stdio.h>
//#include <string.h>
//#include <stdlib.h>
//#include <math.h>
//#include <time.h>
//
//int main(void)
//{
//    char ch = 125 + ;    //-128 -- 127
//
//    printf("ch = %d\n", ch);
//
//    system("pause");
//    return EXIT_SUCCESS;
//}
//
//2.8 类型限定符
//   限定符                                       含义
//   extern                  声明一个变量,exrern 声明的变量没有建立存储空间
//                            extern int a;//   变量在定义的时候创建存储空间
//   const                   定义一个常量,常量的值不能修改
//                           const int a = 10;
//  Volatile                 防止编译器优化代码
//  register                 定义寄存器变量,提高效率,register 是建议型的指令,
//                           而不是命令型的指令,如果 CPU 有空闲寄存器,那么
//                            register 就生效,如果没有空闲寄存器,那么register 无效,

//     2.9  字符串格式化输出和输入
//   2.91 字符串常量
//    1.字符创是内存中一段连续的 char 空间
 

更多推荐

2022.3.17

本文发布于:2024-03-10 08:43:45,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1727500.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!