存储方式
字符串是内存中一段连续的char空间,以’\0’结尾
字符串就是0结尾的连续char的内存
‘\0’ <=> 0 <=> null
printf函数,putchar函数
- printf格式字符
字符 | 对应数据类型 | 含义 |
---|---|---|
d | int | 接受整数值并将它表示为有符号的十进制整数 |
hd | Short int | 短整数 |
hu | Unsigned short int | 无符号短整数 |
o | unsigned int | 无符号8进制整数 |
u | unsigned int | 无符号10进制整数 |
x / X | unsigned int | 无符号16进制整数,x对应的是abcdef,X对应的是ABCDEF |
f | float或double | 单精度浮点数或双精度浮点数 |
e / E | double | 科学计数法表示的数,此处”e”的大小写代表在输出时用的“e”的大小写 |
c | char | 字符型。可以把输入的数字按照ASCII码相应转换为对应的字符 |
s / S | char * / wchar_t * | 字符串。输出字符串中的字符直至字符串中的空字符(字符串以’\0‘结尾,这个’\0’即空字符) |
p | void * | 以16进制形式输出指针 |
% | % | 输出一个百分号 |
- printf附加格式
字符 | 含义 |
---|---|
l | 附加在d,u,x,o前面,表示长整数 |
- | 左对齐 |
m(代表一个整数) | 数据最小宽度 |
0 | 将输出的前面补上0,直到占满指定列宽为止(不可以搭配使用”-“) |
N(代表一个整数) | 宽度至少为n位,不够以空格填充 |
printf是打印一个字符串
putchar是打印一个字符
scanf函数与getchar函数
scanf:从键盘读取一个值
1
2int i = 0;
scanf("%d", &i);getchar:从键盘读取一个字符
1
char c = getchar();
注:在VS中,使用scanf要加入如下宏定义:1