一、数据类型
常量
1、通过预处理声明常量
#include <stdio.h>
#define PRICE 100
int main() {
printf("价格:%d\n",PRICE);
return 0;
}
2、通过 const 关键字声明常量
#include <stdio.h>
const int NUM=10;
int main() {
printf("数量:%d\n",NUM);
return 0;
}
区别:#define 在运行时会替换为指定的值,const可以看到数据类型,更推荐使用 const
整型
在C语言中分为有符号和无符号整型,无符号是整数,有符号包含负数
| 类型 | 说明 |
|---|---|
| short | 2字节 |
| int | 4字节 |
| long | 32位系统4字节,64位系统8字节 |
| long long | 8字节 |
int main() {
int a=10;
int b=-10;
long long c=20;
int d=0b111;//二进制
int e=0xb;//十六进制
int f=010;//八进制
unsigned int g=12;//无符号正数
printf("a=%d,b=%d,c=%d,d=%d",a,b,c,d);
return 0;
}
- 0b 为二进制方式赋值
- 0x 为十六进制数据
- 0 为八进制数据
进制相关知识参考其他教程
c11 标准 stdint.h 对数据的长度进行了统一
| 类型 | 说明 |
|---|---|
| int8_t | 统一8位1字节 |
| int16_t | 2字节 |
| int32_t | 4字节 |
| int64_t | 8字节 |
| uint8_t | 无字符1字节 |
浮点数
| 类型 | 说明 |
|---|---|
| float | 单精度,4字节,32位 |
| double | 双精度,8字节,64位 |
| long double | 长双精度,16字节,128位 |
typedef 自定义类型
typedef uint8_t mychar;
int main() {
mychar ch='a';
printf("%c",ch);
return 0;
}
自定义类型相当于对类型起了个别名
二、goto 跳转
使用 goto 实现循环
int i=0;
aa:
printf("%d\n",i);
i=i+1;
if(i<100){
goto aa;
}
标签名:标记一个位置,goto 标签名;跳转到指定标签位置,标签名可以自己定义。
三、输入与输出
相关函数文档参考:C语言stdio.h文档
1、字符输出
putchar:写字符到标准输出,相当于调用 putc
遍历字符并打印
#include <stdio.h>
int main() {
char c;
for (c='a';c<='z';c++) {
putchar(c);
putchar('\n');
}
return 0;
}
说明:char 类型占用1字节,每个字符都映射对应一个整数。
查看字符对应整数
#include <stdio.h>
int main() {
char c;
printf("=====小写====\n");
for (c='a';c<='z';c++) {
printf("%d\n",c);
}
printf("=====大写====\n");
for (c='A';c<='Z';c++) {
printf("%d\n",c);
}
return 0;
}
大写字符和小写字符刚好差距32,
putchar('A'+32);可转为小写。
2、字符串输出
puts:写字符串到标准输出
输出字符串示例
#include <stdio.h>
int main() {
char string [] = "Hello world!";
puts(string);
return 0;
}
3、格式化输出
printf:打印格式化数据到标准输出,如果包含格式说明符(以%开头的子串)将格式化,用附加参数替换说明符(说明符可以认为是占位符)。
格式化时用到的说明符
| 符号 | 解释 | 举例 |
|---|---|---|
| d 或者 i | 有符号十进制整数 | 392 |
| u | 无符号十进制整数 | 7235 |
| o | 无符号八进制 | 610 |
| x | 无符号十六进制整数 | 7fa |
| X | 无符号十六进制整数(大写) | 7FA |
| f | 十进制浮点,小写 | 392.65 |
| F | 十进制浮点,大写 | 392.65 |
| e | 科学记数法(尾数/指数),小写 | 3.9265e+2 |
| c | 字符 | a |
| s | 字符串 | hello |
| p | 指针地址(内存地址) | b8000000 |
| % | %%打印出一个% | % |
格式化输出示例
#include <stdio.h>
int main() {
printf("字符:%c %

本文介绍了C语言的基础知识,包括数据类型(常量、整型、浮点数、typedef自定义类型)、输入输出(字符、字符串、格式化)、数组、字符串操作、函数、预处理、指针、结构体与共同体以及文件操作。详细讲解了预设常量、编译条件、函数指针、结构体内存对齐和文件读写等概念。
最低0.47元/天 解锁文章
2996

被折叠的 条评论
为什么被折叠?



