Advanced-C.01.基础知识

C语言程序设计概述

一个简单句的C程序

#include 
int main(){
	printf("This is a C program.\n");
	retrun 0;
}

C程序的执行过程

Advanced-C.01.基础知识_第1张图片

数据单位

  • bit:位,计算机中最小的数据单位
  • Byte:字节,计算机中信息组织和存储的基本单位,也是计算机体系结构的基本单位
  • 字长:计算机一次能够并行处理的二进制代码的位数

进制与进制转换

Advanced-C.01.基础知识_第2张图片

  • 二进制转十进制:8421法
  • 十进制转二进制:除以2逆向取余法
  • 二进制转八进制:从右向左,每3个二进制位转换成1个八进制位
  • 八进制转二进制:每1个八进制位转换成3个二进制位,不足三位左边补0
  • 二进制转十六进制:从右向左,每4个二进制位转换成1个十六进制位
  • 十六进制转二进制:每1个十六进制位转换成4个二进制位,不足四位左边补0

原码、反码、补码的转换

  • 正数的原码、反码、补码都是一样的
  • 负数的反码是在原码的基础上“符号位不变,数值位取反”
  • 负数的补码是在反码的基础上“符号位不变,数值位加1”

数据类型

关键字与标识符


Advanced-C.01.基础知识_第3张图片

常量与变量

Advanced-C.01.基础知识_第4张图片

各数据类型

  1. 整型数据
  • 整型常数:八进制、十六进制、十进制三种表示形式,无二进制表示形式
    • 八进制加前导0;十六进制加前导0X;十进制无前缀;
    • 只有十进制可以是负数
  • 整型变量:基本整型int、短整型short、长整型long、无符号整型unsigned
    • Advanced-C.01.基础知识_第5张图片
  1. 实型数据
  • 实型常数:两种表现形式,小数形式,如1.23和指数形式,如1.23e5
  • 实型变量:单精度float,占4字节、双精度double,占8字节
    • 实型常量不分D型和F型
    • Advanced-C.01.基础知识_第6张图片
  1. 字符常量
  • 一个字符常量代表ASCLL码字符集中的一个字符,占1字节,用单引号扩住,区分大小写

  • 一个字符数据可以以字符形式或整数形式输出

  • Advanced-C.01.基础知识_第7张图片

  • Advanced-C.01.基础知识_第8张图片

  1. 字符串常量
  • 一对由双引号括住的字符序列,如"Welcome to china"
    • C语言在编译时会自动在字符串尾加一个转义字符’\0’
  1. 符号常量
  • 由预处理命令"#define"定义的常量,在C语言中可以用标识符代表一个常量

运算符与表达式

运算符优先级

初等运算符>单目运算符>算术运算符(先乘除后加减)>关系运算符>逻辑运算符(不包括"!")>条件运算符>赋值运算符>逗号运算符

各类运算表达式

  1. 单目、双目、三目运算符
  • 单目运算符:运算对象只有一个。如:++ – !
  • 双目运算符:运算对象有两个。如:+-*/
  • 三目运算符:运算对象有三个。如:?:
  1. 算术运算符与算术运算表达式
  • ±*/:只要一个运算对象是浮点型,则表达式值为double型
  • ++、–:区分前后缀,i++、i–、++i、–i
  1. 关系运算符与关系表达式
  • “>” “<” “==” “>=” “<=” “!=”
  • 关系运算表达式的值为"真"“假”,用"1""0"表示
  1. 逻辑运算符和逻辑运算表达式
  • &&:逻辑与,全1为1,有0则0
  • ||:逻辑或,全0为0,有1则1
  • !:逻辑非
  1. 赋值运算符和赋值运算表达式
  • 简单赋值"="
  • 复合赋值"+=" “-=” “*=” “/=” “%=”
  1. 逗号运算符和逗号运算表达式
  • 表达式1,表达式2,表达式3,...
  • 逗号表达式的最终值是最后一个表达式的值,但所有表达式都会运行
  1. sizeof求字节运算符
  • sizeof(表达式)
  • 结果为表达式结果的数据类型占据的字节数
  1. 强制类型转换运算符
  • (类型名)(表达式)
  • 不同类型的数据混合运算时为了保证运算的精度,计算机会自动转向精度高的数据类型转换
  • char一定会转换为int
  • float一定转换为double

你可能感兴趣的:(#,C语言学习笔记,c语言,学习笔记)