C语言中的数据结构类型
一、基本类型
1.整形:
字符型char 短整型short 整形int 枚举类型enum
2.实型
单精度型float 双精度double 长双精度long double
二、构造类型
数组 结构体struct 共用体union 指针类型
三、空类型void
注意:typedef为类型重定义,不是独立类型
C语言中的宏定义
一、无参宏定义
#define 宏名 字符串
#define 宏名 表达式···
二、有参定义
#define 宏名 (形参表) 语句\
例如:#define len 1024
#define init_sql_str(len) char sql_str[len];\
memset(sql_str, 0, sizeof(sql_str))
C语言中的格式化输出符
打印格式 | 对应数据结构 | 含义 |
%d | int | 接受整数值并将它表示为有符号的十进制整数 |
%c | char | 字符型,可以把输入的数字按照ASCII码相应转换为对应的字符 |
%s | char * | 字符串,输出字符串中的字符直至字符串中的空字符(字符串以'\0'结尾,'\0'为空字符) |
%p | void * | 以16进制形式的指针输出 |
%hd | short int | 短整数 |
%hu | unsigned shourt | 无符号短整数 |
%o | unsigned int | 无符号8进制整数 |
%u | unsigned int | 无符号10进制整数 |
%x | unsigned int | 无符号16进制整数(对应abcd...,小写) |
%X | unsigned int | 无符号16进制整数(对应ABCD...,大写) |
%f | float | 单精度浮点数 |
%lf | double | 双精度浮点数 |
%e,%E | double | 科学计数法表示的数,"e"的大小写代表在输出时用的"e"的大小写 |
%% | % | 输出一个% |
附加格式:
字符 | 含义 |
l(字母) | 附加在d,u,x,o前面,表示长整数 |
- | 左对齐 |
m(一个整数) | 数据最小宽度 |
0(数字) | 将输出的前面补上0直到占满指定列宽为止(不可以搭配使用-) |
m.n(都代表整数) | m指域宽,即对应的输出项在输出设备上所占的字符数。n指精度,用于说明输出的实型数的小数位数。对数值型的来说,未指定n时,隐含的精度为n=6位。 |
例如:
int abc = 10;
printf("abc = '%06d'\n", abc);
printf("abc = '%-06d'\n", abc);