Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/66.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
ANSIC:将变量从scanf传递到函数调用_C_Function_Call_Scanf - Fatal编程技术网

ANSIC:将变量从scanf传递到函数调用

ANSIC:将变量从scanf传递到函数调用,c,function,call,scanf,C,Function,Call,Scanf,我的问题是,是否可以直接将解析后的内容从(s)scanf传递到函数调用。换句话说,我是否必须初始化要传递给函数(并通过scanf读取)的变量。sscanf返回成功转换的次数。它不会返回转换后的值 因此,当将sscanf的返回值直接传递到另一个函数时(如果这是您所要求的),您不会传递新转换的数据。sscanf,正如其他人所说,不会返回值,因此不会“直接”传递它们。但是,您可以用如下方式将其包装: struct mydata* parse(char* string) { struct myd

我的问题是,是否可以直接将解析后的内容从(s)scanf传递到函数调用。换句话说,我是否必须初始化要传递给函数(并通过scanf读取)的变量。

sscanf
返回成功转换的次数。它不会返回转换后的值


因此,当将
sscanf
的返回值直接传递到另一个函数时(如果这是您所要求的),您不会传递新转换的数据。

sscanf
,正如其他人所说,不会返回值,因此不会“直接”传递它们。但是,您可以用如下方式将其包装:

struct mydata* parse(char* string) {
    struct mydata* ret = (struct mydata*) malloc(sizeof(struct mydata));

    sscanf(string, /* load the structure with the data */);

    return ret;
}

你可以调用任何你需要的函数。

请举例说明你的意思。我将字符串拆分为不同的“变量”(艺术家、标题、流派),我需要这些变量将它们传递到函数中。我的意思是一个基于代码的示例,说明你希望能够做什么。如果不可能,请不要犹豫,我将把它分配给变量。但是说真的-我到底为什么得到-2??