下面是Scanf的语法。它需要两个参数:
scanf("Format Specifier", Variable Address);
Format Specifier: Type of value to expect while input
Variable Address: &variable returns the variable's memory address.
如果是字符串(字符数组),则变量本身指向相关数组的第一个元素。因此,无需使用“&”运算符来传递地址。
// C program to illustrate not using "&"
// in scanf statement
#include
int main()
{
char name[25];
// Syntax to scan a String
scanf("%s", name);
// Comparing base address of String with adrress
// of first element of array which must return
// true as both must be same
printf("(Is Base address = address of first element)? \n %d",
(name == &name[0]));
}
输出:
(Is Base address = address of first element)?
1
重要事项
- “&”用于获取变量的地址。 C没有字符串类型,String只是一个字符数组,而数组变量存储第一个索引位置的地址。
- 默认情况下,变量本身指向基址,因此访问字符串的基址,无需添加额外的“&”
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。