zoukankan      html  css  js  c++  java
  • 003_stdc_linux基本常用命令_C语言基础

       mv  移动文件/重命令文件

       ~ 把当前光标下的字母转换成大写或小写

       编辑文件 命令  vi / vim

        which  ls  --> 打印出来ls命令的路径

    1.给变量起名字
    可以是中文吗?不可以
    区分大小写 PI pi 是两个变量名
    必须是合法的标示符
    字母或者_开始+字母/数字/_

    非关键字 32
    int return printf;

    同一作用域 不能有同名的变量名
    变量名命名规范

    weixin_money
    weixinMoney

    2. 变量名所绑定的内存 大小

    计算机对内存的组织管理

    基本数据类型

    char       --> 1byte
    short       --> 2byte
    int            --> 4byte
    long long -->8byte

    float        -->4byte
    double    -->8byte

    复合数据类型

    数组
    指针
    结构体
    枚举
    联合

    3. 信息表示

    char c; -->1个字节 8bit 10101010
    'a' -->
    'b'

    int i; --> 4个byte 32bit
    i=5; --->

        无符号
        unsigned int i;有32个bit 表示一个整数
        0 -  4G-1   2的32次方减1

        unsigned char uc;  8bit  表达一个数
        00000000  --- 11111111
                              2的8次方减1
               0         --- 256-1 255

       char c;==> signed char c;

       0  0000000     0 - 127

                             -1 - -128

                            -128 - 127

       char c ='a'; //二进制  -->  十进制

       ascii

       man  ascii   查看字符编码

    十进制数  掌握 二进制  <-->  十六进制    

        0        0000 0000           0x0
        1        0000 0001           0x1
        2                 0010           0x2
        3                0011           0x3
        4                0100           0x4
        5                0101           0x5
        6                0110           0x6
        7                0111           0x7
        8               1000           0x8
        9               1001           0x9
       10               1010           0xa
       11               1011           0xb
       12               1100           0xc
       13               1101           0xd
       14               1110           0xe
       15                1111           0xf
       16        0001 0000        0x10
       17        0001 00001       0x11

       1010 1100 1001 0001  ==>0xac91
       0x478c   ==> 0100 0111 1000 1100 

       0010 1100 1001  从低位(右往左)开始,每4个一组,最后一组不足前面补0

    二进制转10进制

         1           0          1           1
    1*2^3 + 0*2^2 + 1*2^1 + 1*2^0
        8    +     0    +     2     +   1  = 11    

    10进制转二进制(除以二取余)

    11 /2 余数 1
    5 /2 余数 1
    2 /2 余数 0
    1/2 余数 1
    0

    变量的使用

    int i;变量未初始化,是一个不确定的值

        printf("uc = %u ",uc); //读4个字节

    printf("f = %f,f=%g,f=%.3f ",f,f,f);%f,浮点数     
    printf("d = %lf,d=%g,d=%.2lf ",d,d,d);%lf,双精浮点数     

     %g;把小数点后面0省略掉
    %.3f;表示保留3个小数点位数

    /*
     * [练习:输入一个大写字母,输出其小写字母]
     */
    #include <stdio.h>
    int main(){
        char c = 0;
        //读入键盘上的值到c的存储区
        printf("请输入一个字符:");
        scanf("%c",&c);
        //查ascii 大写 和 小写 相差32
        //打印c的转换后的值
        printf("c = %c
    ",c+32);
        return 0;
    }

    //所有的数在内存表示都是补码
    //正数的补码 就是其原码
    //负数的补码 反码+1

    #include <stdio.h>
    int main(){
        int s = -2;//1111 1111 1111 1111 1111 1111 1111 1110  ->0xfffffffe
                +2;//0000 0000 0000 0000 0000 0000 0000 0010
                 0;//0000 0000 0000 0000 0000 0000 0000 0000
        printf("s = 0x%x
    ",s); 
        //0xfffffffe
        //1111 1111 1111 1111 1111 1111 1111 1110
         -2;
        //1000 0000 0000 0000 0000 0000 0000 0010
        //反码
        //1111 1111 1111 1111 1111 1111 1111 1101
         +1
        //1111 1111 1111 1111 1111 1111 1111 1110   在内存中的表示
        //所有的数在内存表示都是补码
        //正数的补码 就是其原码
        //负数的补码 反码+1
        getchar();
        return 0;
    }

    c89 不支持 bool (布尔)
    c99 支持_Bool

    运算符
      sizeof
        sizeof(int)数据占用内存的字节数
        sizeof(i)

        sizeof(3.14)

    = 赋值运算
    将=右边的值 放到 = 左边的 存储单元中

     

    何所为,不仅仅是一种态度,更是一种艺术!
  • 相关阅读:
    最近实际项目中遇到的技术问题与解决思路
    独立完成一个城市选择组件(阿里前端题目,内附知识点、思路)
    用Node.js写爬虫,撸羞羞的图片
    Flutter项目之app升级方案
    Flutter数据持久化入门以及与Web开发的对比
    为什么要学会正则表达式
    async/await,了解一下?
    面向面试题和实际使用谈promise
    从一次输入框无法输入的bug,谈如何限制输入框输入类型
    Vue组件的is具体用法
  • 原文地址:https://www.cnblogs.com/tanzizheng/p/12892444.html
Copyright © 2011-2022 走看看