0
点赞
收藏
分享

微信扫一扫

RNN实战

大南瓜鸭 03-12 09:00 阅读 3

1. 常量

1.1 定义

        在程序运行过程中不能被改变的量

1.2 整形常量

1.3 浮点型常量

1.4 字符常量

1.5 字符串常量

        "ab" == 'a' + 'b' + '\0'
        "ab\0" =='a' + 'b' + '\0' + '\0'
        
        '\0' : 标识字符串结尾(每个字符串末尾都有一个\0)
        
        "a" == 'a' + '\0'
        'a' == 'a'

1.6 标识常量

        #define  PI        3.1415 

        注意:
            1.宏定义名字可以小写,但为了和变量区分,一般都用大写
            2.宏定义时能加括号就加括号,不要吝啬小括号
               宏只是代码的替换,中间不进行任何数据计算的操作

2. 变量

2.1 定义

        在程序运行过程中值可以发生改变的量,通常变量先定义再使用,默认为随机值

2.2 变量的定义
            数据类型 变量名;

2.3 变量名
                1.只能由字母、数字、下划线组成
                2.不能以数字开头
                3.不能与C语言关键字重名
                4.最好不要与C语言库函数重名    
                5.变量名最好见名知意
                6.可以采用驼峰法(软件编程常见)、Linux内核命令方法(内核开发

2.4 变量的初始化:
            在定义变量时为变量赋初值

2.5 整形变量:
            short Num;
            unsigned short Num;
            int Num;
            unsigned int Num;
            long Num;
            unsiged long Num;
            char Num;
            unsigned char Num;

2.6 浮点型变量:
            float f;
            double d;

3. 数据类型转换

3.1 显式类型转换(显示类型转换)
        (数据类型)变量名 
        将变量类型强制类型转换为括号内所写类型(注意:只临时转一次)

3.2 隐式类型转换:
        不同数据类型完成数据运算、数据处理做隐式类型转换
        转换规则:
            1.低精度向高精度转换
                1.浮点型比整形精度范围更高
                2.同种类型所占字节空间越大,精度范围越高
                3.无符号精度范围比有符号精度范围更高
                
            2.char short 进行数据处理时会默认转换为int类型
              float 进行数据处理时会默认转换为double类型
              
             char short   ->    int                 低
                                       long 
                                       unsigned 
                       float   ->   double           高

4. 语句


    以 ; 号结尾的一段代码称为语句

5. 表达式

                    
    由一个或者多个运算符及 变量/常量 组成的式子称为表达式
    表达式一定是有值

6. 运算符

6.1 算数运算符

        +
        -
        *
        /
        %    (唯一不能对浮点数操作的算数运算符)
        ++ : 自增运算符
         --  : 自减运算符        
        i++ : 后置++   先用再加
        ++i : 前置++   先加再用

6.2 关系运算符

        >
        <
        ==
        !=
        >=
        <=
        泊尔类型:
            bool 
            值域:
                true      1
                false     0

注意: 在C语言中:非0值为逻辑真值
                                 0值为逻辑假值

6.3 逻辑运算符(重点)
        && : 逻辑与    既..又..  (全真为真,一假为假)
        || :    逻辑或    要么..要么.. (一真为真,全假为假)
        ! :     逻辑非    真取非得假,假取非得真

注意:截断特性(从左往右计算)
            1.逻辑与一假为假,左边为假,右边不再计算
            2.逻辑或一真为真,左边为真,右边不再计算 

6.4 位运算符(重点)

        & : 按位与   (与0得0、与1不变)
         | :  按位或  (或1得1、或0不变)
         ^ : 按位异或  (相同为0、相异为1)    num ^ num == 0        num ^ 0 == num
        ~ : 按位取反
        >> : 右移
            缩小移动的数字 : 除以2^n 
        <<:左移
            放大移动的数字 : 乘以2^n 

        让一个字节第n位(从右往左第n位)置1:
            num = num | (1 << n);
        让一个字节第n位(从右往左第n位)置0:
            num = num & ~(1 << n);
            
        编写程序判断一个数二进制中有多少位1?
        
        两个数交换(三种数据交换得方法):
            1.使用临时中间变量完成交换
            2.使用算术运算完成交换
            3.异或可以完成数据交换

6.5 特殊运算符(三目运算符)


        表达式1 ? 表达式2 : 表达式3;

        表达式1为真,执行表达式2,否则执行表达式3

举报

相关推荐

0 条评论