我感到困惑的论点sscanf的常规为什么sscanf的需要及为%d整数但不能%s的字符串
#include <string.h>
char sentence[20];
char first_name[7];
char last_name[7];
int age;
strcpy(sentence, "aaaaaa bbbbbb 20");
sscanf(sentence, "%s %s %d", first_name, last_name, &age);
这是为什么字符数组不需要&前缀,但整型变量呢?
谢谢
因为数组名称是对基地址的引用 – sinsuren
数组衰减为指针,所以它已经有字符串地址 –
用动态分配,你的变量语句可以像'char * sentence = malloc(sizeof(char )* 20);'也许这会帮助你理解 –