CCCC
Yihui Xie / 2023-02-14
一、基本概念
1.以hello作为开始:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
printf("Hello, world!\n");
return 0;
}
以helloworld为例对写程序的思路提出如下要求:
- 头文件正确包含的正确性;
- 以函数为单位来进程程序编写;
- 声明部分+实现部分
- return 0一定要有,本意是结束当前函数,返回给父进程看的。
- 多用空格和空行!
- 添加注释
2.算法:解决问题的方法。(流程图,NS图,FSM有限状态机)
3.程序:用某些语言实现算法。
4.进程:
5.防止写越界、防止内存泄漏。谁打开谁关闭,谁申请谁释放。
二、数据类型、运算符和表达式
1、数据类型:(基本数据类型)
在 C 语言标准(C89)没有定义布尔类型,所以 C 语言判断真假时以 0 为假,非 0 为真。
C99 提供了 _Bool 型,所以布尔类型可以声明为 _Bool flag。
_Bool 依然仍是整数类型,但与一般整型不同的是,_Bool 变量只能赋值为 0 或 1,非 0 的值都会被存储为 1。
C99还提供了一个头文件 <stdbool.h> 定义了 bool 代表 _Bool,true 代表 1,false 代表 0。只要导入 stdbool.h ,就能非常方便的操作布尔类型了。
C语言基本数据类型
类型 | 符号 | 关键字 | 所占位数 | 存储大小 | 值范围 |
---|---|---|---|---|---|
整型 | 有 | (signed) int | 32 | 2 或 4 字节 | -32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647 |
有 | (signed) short | 16 | 2 字节 | -32,768 到 32,767 | |
有 | (signed) long | 32 | 4 字节 | -2,147,483,648 到 2,147,483,647 | |
无 | unsigned int | 32 | 2 或 4 字节 | 0 到 65,535 或 0 到 4,294,967,295 | |
无 | unsigned short | 16 | 2 字节 | 0 到 65,535 | |
无 | unsigned long | 32 | 4 字节 | 0 到 4,294,967,295 | |
实型 | 有 | float | 32 | 3.4e-38~3.4e38 | |
有 | double | 64 | 1.7e-308~1.7e308 | ||
字符型 | 有 | char | 8 | 1 字节 | -128 到 127 或 0 到 255 |
无 | unsigned char | 8 | 1 字节 | 0 到 255 |
思考:
- 所占字节数
数据类型所占字节数随机器硬件不同而不同,C标准没有规定每种类型所占位数和字节数
-
存储区别
-
不同类型的数据间进行转换
-
特殊性: