合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻
C
语言 scanf
中,%s
不需要加 &
格式化符号 | 变量类型 | 是否需要加 & | 原因 |
---|---|---|---|
%s | 字符数组 | 不需要 | 数组名本身就是指针,指向数组的首地址。 |
%c | 字符变量 | 需要 | 字符变量是值类型,需要传递地址以便 scanf 能够修改它的值。 |
%d | 整数变量 | 需要 | 整数变量是值类型,需要传递地址以便 scanf 能够修改它的值。 |
%f | 浮点数变量 | 需要 | 浮点数变量是值类型,需要传递地址以便 scanf 能够修改它的值。 |
#include <stdio.h>int main() {char name[12];char sex;printf("请输入姓名和性别:");scanf("%s %c", name, &sex); // name 不需要加 &,sex 需要加 &printf("姓名:%s,性别:%c\n", name, sex);return 0;
}
输入:
Alice F
输出:
姓名:Alice,性别:F