Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用scanf读取一行中的字符串和int时出现问题_C_String_Struct_Int_Scanf - Fatal编程技术网

使用scanf读取一行中的字符串和int时出现问题

使用scanf读取一行中的字符串和int时出现问题,c,string,struct,int,scanf,C,String,Struct,Int,Scanf,我必须读取由空格分隔的3个字符串和由空格分隔的2个整数,并将它们保存到结构中 #define n 5; struct person { char last_name[20]; char sec_last_name[20]; char name[20]; int num; int kw; }client[n]; 我试着这样读 for(i=0;i<n;i++) { sc

我必须读取由空格分隔的3个字符串和由空格分隔的2个整数,并将它们保存到结构中

  #define n 5;
    struct person
    {
        char last_name[20];
        char sec_last_name[20];
        char name[20];
        int num;
        int kw;
    }client[n];
我试着这样读

for(i=0;i<n;i++)
{    
    scanf("%s %s %s %d %d",client[i].last_name,client[i].sec_last_name,client[i].name,client[i].num,client[i].kw);
}

for(i=0;iscanf语句有语法错误。
&
应在整型之前使用

 scanf("%s %s %s %d %d",client[i].last_name,client[i].sec_last_name,client[i].name,&client[i].num,&client[i].kw);
还有一件事是

#define n 5 /*;*/
不应使用

示例:


如果使用了
,则它将替换结构变量声明中的客户端[5;]。然后它将发出编译错误。

更改为
&客户端[i].num,&客户端[i].kw