zoukankan      html  css  js  c++  java
  • 01#c语言基础内容

    #include<stdio.h>
    #c语言基础内容
    {    1.基础名词含义    Byte    bit   
        2.数据(变量)类型
        3.内存储存方式(取反加一)
        4.取别名
        5.字符串的使用
        6.格式控制符总览    
        7.运算符
         /* 【算术运算符】
            【赋值运算符】
            【比较运算符】
            【逻辑运算符】
            【位逻辑运算】*/
        8.运算优先级
        9.编程规范
    }
    int day1()     //c语言里非0既真
    {
        #有关 Byte bit  的注释
        {
    /*********************************
    Byte(字节)  |  bit(二进制位、比特或比特率) 
    1Byte=8bit  |   位
    /******************************
    二进制(B)、八进制(O)、十进制(D)、十六进制(前缀OX,后缀H)之间的转化
    bit //比特率
    字节(Byte)
    1字节=8bit(0000 0000)
    1字节等于2位十六进制
    8bit=十六进制
    ASCII码总量7bit
    EBCDIC码总量8bit
    
    error: 编译运行汉字无法显示,可能原因是编码方式错误,UTF-8 无BOM型可以避免错误
    */
    }
        #short int unsigned 等数据类型的解释
        {//数据类型只决定了该类型的储存范围,输出
         //范围是由输出控制符以及集成开发环境(IDM)
         //决定的
    
    数据类型          占用空间                                                                取值范围                    格式控制符        
    short                2字节                                                                 (-2^7~2^7-1)                     %hd
    int                  4字节                                                                 (-2^15~2^15-1)                      %d        
    long                 windows(32)4字节,Linux为4字节(32位),8字节(64位)               (-2^15~2^15-1)                     %ld
    long long            8字节                                                                (-2^31~2^31-1)                     %lld    
    unsigned 无符号型    4字节                                                              (0~2^31)0~4294967295             %u          //若强制输出负数则输出乱码
    char                 1字节 /*8位其中最高位为符号位*/                                    (NUL~DEL) -128~127                 %c          //赋值字符变量时需要加单引号     例子:'a'
    {float 浮点型         4字节                                                                  (小数点后六位)                     %f
        {
            用法对比一
            float num1 = 3.1415926535;
            double num2 = 3.1415926535;
            printf('num1 = %.10f , num2 = %.10f
    ' , num1 , num2);
            输出结果:nu1=3.1415927410 ,num2=3.1415926535
            {
            解析:num1的结果中,只能精确到小数点后面第六位,
            也就是:3.141592 , 第七位,本来是6,但是上图中
            的运行结果,却是7了。也就是说,float只能精确到
            小数点后面六位,在往后,数字就不精确了。但是,
            num2的运行结果,是正确的。这说明:double所能精
            确到的小数点位数,比float多很多位解析:float只
            能精确到小数点后6位.
            http://www.360doc.com/content/17/1210/18/48169514_711868520.shtml
            }
        }
        {
            用法对比二
            float num1 = 3.14E3;
            double num2 = 3.14E3;
            printf('num1 = %.0f , num2 = %.0f
    ' , num1 , num2);
            输出结果:num1=3140 num2=3140
        }
    }                                                             (0.375252E-8)                       %f
    double  双精度浮点型 8字节                                                                                                 %lf
    long double          12字节 //16字节64位                                                                                                  %llf
    bool (布尔){       1字节                                                               (0,1)                            %d        //头文件<stdbool.h>
                        bool flag =false;(flag为假)
                        bool flag =true;
                }
            }
        }
    }
        #变量在内存中的存储形式
        /*********************************
            变量存放补码+1
            例:5的二进制位(0000 0101)
                           取反(1111 1010)
                           取反+1(1111 1011)
                  内存中存放位(1111 1011)
    
        *********************************/
        #typedef (取别名)
        {
        typedef long int int32_a;//用于程序开头,为已有的数据类型取一个新名字
    }
        #字符串
         {
             char a[]="abbfdjk"
             内存存放形式:数组本身是不需要终止符号的,
                          只有数组装的是字符串儿的时候,
                          才需要终止符号,所以应该理解
                          为是字符串需要结束符号,所以
                          其他类型的数组就不用了
                |0|1|2|3|4|5|6| 7|
                |a|b|b|f|d|j|k|0|
            打印字符串    printf("%s",a);或者printf("%s","abbfdjk") 只有这两种方法;
         }
        #%d  格式控制符总览
        {
            %d 格式控制符的使用
            {
                %5d    >>    该数值输出可占用5位字符位置
                %.5d  >>    该数值输出时保留到小数点后六位
            }
            %d 格式控制符表
            {
                /********************************************
                格式控制符            打印格式
                %s                      字符串
                %c                      字符
                %#o                     八进制 
                %#x                   十六进制
                %d                   整型
                %ld                  长整型
                %lld                 长长整形
                *********************************************/
            }
        }
        #运算符
        {
            #算数运算符
            {
            运算符        术语                        示例                结果
                +            正号                    +3                3
                -            负号                    -3                -3    
                +            加                        10+5            15
                -            减                      10-5            5        
                *            乘                        10*5            50
                /            除                        10/5            2    
                %            取模(取余)            10%3            1
                ++            前置递增               a=2;b=++a;        a=3;b=3;
                ++            后置递增            a=2;b=a++;        a=3;b=2;            
                --            前置递减            a=2;b=--a;        a=1;b=1;
                --            后置递减            a=2;b=a--;        a=1;b=2;
                //float型不能进行取余运算
            }
            #赋值运算符
            {
            运算符        术语                        示例                结果
                =        赋值                    a=2;b=3;               a=2;b=3;
                +=        加等于                    a=0;a+=2;               a=2;
                -=        减等于                    a=5;a-=3;               a=2;
                *=        乘等于                    a=2;a+=2;               a=4;
                /=        除等于                    a=4;a/=2;               a=2;
                %=        模等于                    a=3;a%=2;               a=1;    
            }
            #比较运算符
            {
            运算符        术语                        示例                结果    
            ==            相等于                    4==3            0
            !=            不等于                    4!=3            1
            <            小于                    4<3                0
            >            大于                    4>3                1
            <=            小于等于                4<=3            0
            >=            大于等于                4>=1            1
            }
            #逻辑运算符
            {
            
            运算符        术语                        示例                结果    
            !            非                            !a                    若a为非零即为假,若a为0则为真
            &&            与                            a&&b                若a和b都非零则真,反之则为加
            ||            或                            a||b                若a和b有一个非零则真,两者皆零则为假
            #位逻辑运算(得到的值为)
            |                位运算或                a|b                将a和b进行二进制位或运算,结果输出转化为10进制数
            &                位运算与                a&b                将a和b进行二进制与运算,结果输出转化为10进制数            
            ^                位逻辑异或                a^b                
            }
            + - * / % ++  --
            a++ 先取值后运算
            ++a 先运算再取值
            a+++b=(a++)+b
            float   等浮点型,不能进行取余运算
            int     类型变量相除不能打印浮点型
        }
        #运算优先级
        /*********************************************************************
            1     () [] . ->
            2     ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof
            3     * / %
            4     + -
            5     >> <<
            6     > >= < <=
            7     == !=
            8     &
            9      ^
           10     |
           11     &&
           12    ||
           13    ?:
           14     = += -= *= /= %= |= ^= &= >>= <<=
           15     ,
        ******************************************************************/
        #编程规范
        {
        ""自己的头文件
        <>原本的头文件
        /函数名/要求:尽量用小写字母,加下划线;
        /Ubuntu内的指令
        -Wall详细的警告
        -l./头文件目录(include)   -L./库目录(lib)
        gcc 编译文件 -o 生成的文件 -Wall        
        重点
        :1.c语言里非0既真
          2.数据类型只决定了该类型的储存范围,输出
            范围是由输出控制符以及集成开发环境(IDM)
            决定的
          3.数组本身是不需要终止符号的,
            只有数组装的是字符串儿的时候,
            才需要终止符号,所以应该理解
            为是字符串需要结束符号,所以
            其他类型的数组就不用了
        4.float   等浮点类型,不能进行取余运算
          int     类型变量相除不能打印浮点型
        }
    
    }
        

    #include<stdio.h>#c语言基础内容{1.基础名词含义Bytebit   2.数据(变量)类型3.内存储存方式(取反加一)4.取别名5.字符串的使用6.格式控制符总览7.运算符 /* 【算术运算符】【赋值运算符】【比较运算符】【逻辑运算符】【位逻辑运算】*/8.运算优先级9.编程规范}int day1()     //c语言里非0既真{#有关 Byte bit  的注释{/*********************************Byte(字节)  |  bit(二进制位、比特或比特率) 1Byte=8bit  |   位/******************************二进制(B)、八进制(O)、十进制(D)、十六进制(前缀OX,后缀H)之间的转化bit //比特率字节(Byte)1字节=8bit(0000 0000)1字节等于2位十六进制8bit=十六进制ASCII码总量7bitEBCDIC码总量8bit
    error: 编译运行汉字无法显示,可能原因是编码方式错误,UTF-8 无BOM型可以避免错误*/}#short int unsigned 等数据类型的解释{//数据类型只决定了该类型的储存范围,输出 //范围是由输出控制符以及集成开发环境(IDM) //决定的
    数据类型          占用空间                                                                取值范围格式控制符        short                2字节                                                             (-2^7~2^7-1)                     %hdint                  4字节                                                             (-2^15~2^15-1)              %dlong                 windows(32)4字节,Linux为4字节(32位),8字节(64位)               (-2^15~2^15-1)             %ldlong long            8字节                                                    (-2^31~2^31-1)             %lldunsigned 无符号型    4字节                                                              (0~2^31)0~4294967295 %u          //若强制输出负数则输出乱码char                 1字节 /*8位其中最高位为符号位*/                                    (NUL~DEL) -128~127     %c          //赋值字符变量时需要加单引号     例子:'a'{float 浮点型 4字节      (小数点后六位) %f{用法对比一float num1 = 3.1415926535;double num2 = 3.1415926535;printf('num1 = %.10f , num2 = %.10f ' , num1 , num2);输出结果:nu1=3.1415927410 ,num2=3.1415926535{解析:num1的结果中,只能精确到小数点后面第六位,也就是:3.141592 , 第七位,本来是6,但是上图中的运行结果,却是7了。也就是说,float只能精确到小数点后面六位,在往后,数字就不精确了。但是,num2的运行结果,是正确的。这说明:double所能精确到的小数点位数,比float多很多位解析:float只能精确到小数点后6位.http://www.360doc.com/content/17/1210/18/48169514_711868520.shtml}}{用法对比二float num1 = 3.14E3;double num2 = 3.14E3;printf('num1 = %.0f , num2 = %.0f ' , num1 , num2);输出结果:num1=3140 num2=3140}}     (0.375252E-8)           %fdouble  双精度浮点型 8字节                     %lflong double          12字节 //16字节64位              %llfbool (布尔){       1字节                                                               (0,1)                            %d        //头文件<stdbool.h>bool flag =false;(flag为假)bool flag =true;}}}}#变量在内存中的存储形式/*********************************变量存放补码+1例:5的二进制位(0000 0101)   取反(1111 1010)   取反+1(1111 1011)  内存中存放位(1111 1011)
    *********************************/#typedef (取别名){typedef long int int32_a;//用于程序开头,更改程序内已经设置的变量数据类型}    #字符串 { char a[]="abbfdjk" 内存存放形式:数组本身是不需要终止符号的,  只有数组装的是字符串儿的时候,  才需要终止符号,所以应该理解  为是字符串需要结束符号,所以  其他类型的数组就不用了|0|1|2|3|4|5|6| 7||a|b|b|f|d|j|k||打印字符串printf("%s",a);或者printf("%s","abbfdjk") 只有这两种方法; }#%d  格式控制符总览{%d 格式控制符的使用{%5d>>该数值输出可占用5位字符位置%.5d  >>该数值输出时保留到小数点后六位}%d 格式控制符表{/********************************************格式控制符打印格式%s          字符串%c      字符%#o     八进制 %#x   十六进制%d                   整型%ld              长整型%lld                 长长整形*********************************************/}}#运算符{#算数运算符{运算符术语示例结果+正号+33-负号-3    -3+加10+5    15-减  10-55*乘10*550/除10/52%取模(取余)10%31++    前置递增   a=2;b=++a;a=3;b=3;++    后置递增a=2;b=a++;a=3;b=2;--前置递减a=2;b=--a;a=1;b=1;--后置递减a=2;b=a--;a=1;b=2;//float型不能进行取余运算}#赋值运算符{运算符术语示例结果=赋值a=2;b=3;       a=2;b=3;+=加等于a=0;a+=2;       a=2;-=减等于a=5;a-=3;       a=2;*=乘等于a=2;a+=2;       a=4;/=除等于a=4;a/=2;       a=2;%=模等于a=3;a%=2;           a=1;}#比较运算符{运算符术语示例结果==相等于4==30!=不等于4!=31<小于4<30>大于4>31<=小于等于4<=30>=大于等于4>=11}#逻辑运算符{运算符术语示例结果!非!a若a为非零即为假,若a为0则为真&&与a&&b    若a和b都非零则真,反之则为加||或a||b若a和b有一个非零则真,两者皆零则为假#位逻辑运算(得到的值为)|位运算或a|b将a和b进行二进制位或运算,结果输出转化为10进制数&位运算与a&b将a和b进行二进制与运算,结果输出转化为10进制数^位逻辑异或    a^b}+ - * / % ++  --a++ 先取值后运算++a 先运算再取值a+++b=(a++)+bfloat   等浮点型,不能进行取余运算int 类型变量相除不能打印浮点型}#运算优先级/*********************************************************************1 () [] . ->2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof3 * / %4 + -5 >> <<6 > >= < <=7 == !=8 &9 ^   10 |   11 &&   12    ||   13    ?:   14 = += -= *= /= %= |= ^= &= >>= <<=   15 ,******************************************************************/#编程规范{""自己的头文件<>原本的头文件/函数名/要求:尽量用小写字母,加下划线;/-Wall详细的警告-l./头文件目录(include)   -L./库目录(lib)gcc 编译文件 -o 生成的文件 -Wall重点:1.c语言里非0既真  2.数据类型只决定了该类型的储存范围,输出    范围是由输出控制符以及集成开发环境(IDM)    决定的  3.数组本身是不需要终止符号的,    只有数组装的是字符串儿的时候,    才需要终止符号,所以应该理解    为是字符串需要结束符号,所以    其他类型的数组就不用了4.float   等浮点类型,不能进行取余运算  int 类型变量相除不能打印浮点型}
    }

  • 相关阅读:
    iOS中NSString常用操作合集
    iOS利用Runtime自定义控制器POP手势动画(经典)
    iOS学习之UILable上显示不同的字体和颜色
    iOS学习之UICollectionView使用注解
    iOS学习之new与alloc init,[NSArray array] 和 [[NSArray alloc]init] 及 self. 和 _ 的区别
    iOS学习之常用第三方框架总结(经典/必看)
    iOS学习之block总结及block内存管理(必看)
    Http协议与TCP协议理解
    SDImage框架实现原理详解
    iOS NSFileHandle常用操作
  • 原文地址:https://www.cnblogs.com/lxuechao/p/12715995.html
Copyright © 2011-2022 走看看