zoukankan      html  css  js  c++  java
  • C语言基础(复习向)

    0、C语言的组成

    组成:若干文件

    文件:若干函数

    函数:函数头+函数体

    函数头:函数返回类型+函数名+ () +形参类型+ 形参名  /* 函数声明只需要声明形参类型即可,这里不深入 */

    函数体:{ }+语句

    语句:三类语句

    C语言区分大小写

    注释语句;定义语句;执行语句

    分号为语句结束符

    1、数据与数据类型

    数据四类:常量、变量、表达式、函数

    用运算符将数据连接起来的合法式子

    函数:调用具有一定功能函数作为运算量

    数据类型四类:基本类型、构造类型、指针类型、空类型

    基本类型:字符型char、整形 int、浮点型(单精度) float、双精度 double、枚举类型 enum

    构造类型:数组类型、结构体类型 struct、共用体类型 union

    空类型:void

    基本类型都是内置的,拿来就可以用的。构造类型需要自己构造。

    常量四类:整形常量(十进制、八进制、十六进制)、实型常量、字符型常量、字符串常量

    整形常量:1

    实型常量:2.333

    字符型常量:'a'

    字符串型常量:"hello world"

    二进制 三位 变 八进制一位

    二进制 四位 变 十六进制一位

    二进制 转 十进制:

    例如:101010 (2) = 1*2^5 + 0*2^4 + 1*2^3 + 0*2^2 + 1*2^1 +0*2^0  (10)

    十进制 转 二进制 :

    例如 13(10) = 1101(2)

    技巧:除2取余倒排。(直到被除数为0停止)

    C语言中 符合 8进制 编码要求的数,且首位为0,认为是八进制

    例如:0770(正确) 0990(错误、不符合8禁止编码)

    C语言中 符合 16进制 编码要求的数,且首位为0x或0X,认为是十六进制

    实型常量(小数、指数)

    例如:0.1 或 .1 (点号前不写0也是合法的)

    例如:1.23E5或 1.23e5 

    e表示权值为10,e/E后面的数位次方

    规则:1、字母e/E前后必须有数,且e后的数必须为整数 2、e/E前后不能有空格

    字符串常量:用一对引号括起来的若干字符

    规则:

    1、每个字符串都有一个字符串结束符 ''

    2、C语言中没有字符串变量

    所以C语言中的字符串常量都是借存(不深入)

    变量使用规则:先定义后使用

    定义格式:数据类型名 变量名列表 ;

    变量名属于标识符,遵守标识符命名规则。在同一函数体中,不能定义同名变量,同时定义多变量,必须用逗号分开,变量可以赋初始值,无初始值则是系统分配随机值

    2、标识符

    标识符三类:保留字(关键字)、预定于标识符、用户自定义标识符

     1 保留字:共32个
     2 
     3 
     4 1 数据类型关键字(12个): 
     5 (1) char :声明字符型变量或函数 
     6 (2) double :声明双精度变量或函数 
     7 (3) enum :声明枚举类型 
     8 (4) float:声明浮点型变量或函数 
     9 (5) int: 声明整型变量或函数 
    10 (6) long :声明长整型变量或函数 
    11 (7) short :声明短整型变量或函数 
    12 (8) signed:声明有符号类型变量或函数 
    13 (9) struct:声明结构体变量或函数 
    14 (10) union:声明联合数据类型 
    15 (11) unsigned:声明无符号类型变量或函数 
    16 (12) void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)
    17 
    18 
    192)控制语句关键字(12个): 
    20 A循环语句 
    21 (1) for:一种循环语句(可意会不可言传) 
    22 (2) do :循环语句的循环体 
    23 (3) while :循环语句的循环条件 
    24 (4) break:跳出当前循环 
    25 (5) continue:结束当前循环,开始下一轮循环 
    26 B条件语句 
    27 (1)if: 条件语句 
    28 (2)else :条件语句否定分支(与 if 连用) 
    29 (3)goto:无条件跳转语句 
    30 C开关语句 
    31 (1)switch :用于开关语句 
    32 (2)case:开关语句分支 
    33 (3)default:开关语句中的“其他”分支 
    34 D 
    35 return :子程序返回语句(可以带参数,也看不带参数)
    36 
    37 
    38 3 存储类型关键字(4个) 
    39 (1)auto :声明自动变量 一般不使用 
    40 (2)extern:声明变量是在其他文件正声明(也可以看做是引用变量) 
    41 (3)register:声明积存器变量 
    42 (4)static :声明静态变量
    43 
    44 
    45 4 其它关键字(4个): 
    46 (1)const :声明只读变量 
    47 (2)sizeof:计算数据类型长度 
    48 (3)typedef:用以给数据类型取别名(当然还有其他作用 
    49 (4)volatile:说明变量在程序执行中可被隐含地改变
    50 
    51 预定义标识符:预先定义并具有特定含义的标识符,scanf、printf、include
    52 https://blog.csdn.net/21aspnet/article/details/1539252(这哥们整理的的,链接52行)

    用户自定义标识符:变量名、数组名、函数名

    用户自定义标识符命名规则:第一个字符必须是字符或下划线,后面由字母、数字、下划线组成

    3、表达式

    取余运算时候,余数的正负与被除数一致。整形除法运算得到的商,如果能整除,则为整除数、如果不能整除,则只去整数,小数都忽略

    3.2、赋值运算符合赋值表达式

    运算方向:从右至左

    运算优先级:14( 1最高 )

    赋值符号:=

    格式:变量名 = 表达式

    赋值运算符的功能:将表达式赋给 ”= “左边的变量(左值)

    例如: A = 1 + 2 ;  (赋值表达式的值等于被赋值变量的值)

    例如:a=b=2(合法的)

    注释:1、赋值运算符左边只能是一个变量 2、赋值运算符右边可以是合法表达式 3、赋值表达式的值等于赋值运算符左边的变量值

    4、不同类型之间赋值,系统在可转换的前提下进行类型转换。比如实型数赋值给整形变量,转换为整类 ,后面的小数则会被省略

    复合赋值号优先级与运算方向与赋值号一样

    +=、-=、*=、/=、%=、&=、|=、^=、>>=、<<=、

    3.3、前置自增自减、后置自增自减

    自增、自减只能用于变量,不能用于常量和表达式.前置和后置的区别在于对表达式的改变

    ++a 为 前置自增表达式,表达式的值=4,变量的值为4

    a++为 后置自增表达式。表达式的值=3,变量的值为4

    int a1=1,a2=1.a3=1,a4=1;
    int c1,c2,c3,c4;
    c1=++a1     //表达式(++a)=2,变量c1= 2
    c2=a2++     //表达式(++a)=1,变量c2= 2
    c3=--a3;      //表达式(--a)=0,变量c3= 0
    c4=a4--       //表达式(a--)=1,变量c4= 0

     C语言中隐式转换为少字节类型向高字节类型转换

     

    本文由作者原创,如需转载注明出处!
  • 相关阅读:
    单元测试之Stub和Mock
    【爆牙齿】说说我期待中的苹果那块板子。
    【爆牙游记】黄山归来不看岳-翻山。
    【爆牙齿】微软的坟墓:Windows 7。(四)
    【爆牙齿】微软的坟墓:Windows 7。(二)
    【爆牙齿】微软的坟墓:Windows 7。(三)
    【爆牙齿】微软的坟墓:Windows 7。(一)
    【爆牙齿】微软的坟墓:Windows 7。(五)
    【爆牙游记】黄山归来不看岳-日出。
    过年照片集。
  • 原文地址:https://www.cnblogs.com/Fsiswo/p/9877737.html
Copyright © 2011-2022 走看看