Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.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
在C语言中可以有一个没有名字的函数吗?_C - Fatal编程技术网

在C语言中可以有一个没有名字的函数吗?

在C语言中可以有一个没有名字的函数吗?,c,C,我在挖掘的时候在它的一个库中发现了这行代码,是用C写的: (_s, m); _s和m都是结构,那么它是什么呢 PS:检查结尾以查看实际的源代码。C根本没有方法,它有函数 在任何情况下,您提供的代码都不是函数调用,而是表达式语句。圆括号用于它们的优先级覆盖分组函数,尽管这是不必要的,而逗号是逗号运算符,用于计算两个操作数,结果是第二个操作数的值 由于结果未使用,并且逗号的操作数是简单的变量名,因此语句总体上没有副作用。我能想到的唯一目的是@chux在评论中建议的一个目的:提供一个语句,在其中可以

我在挖掘的时候在它的一个库中发现了这行代码,是用C写的:

(_s, m);
_s和m都是结构,那么它是什么呢


PS:检查结尾以查看实际的源代码。

C根本没有方法,它有函数

在任何情况下,您提供的代码都不是函数调用,而是表达式语句。圆括号用于它们的优先级覆盖分组函数,尽管这是不必要的,而逗号是逗号运算符,用于计算两个操作数,结果是第二个操作数的值


由于结果未使用,并且逗号的操作数是简单的变量名,因此语句总体上没有副作用。我能想到的唯一目的是@chux在评论中建议的一个目的:提供一个语句,在其中可以插入断点进行调试,特别是检查所涉及的两个变量在该点的值。

这不是函数调用,只是对_sthen m的评估。可能对调试有用。它是一个逗号运算符。还要注意,C中的函数通常被称为函数,而不是方法,方法通常被称为属于类的函数。一些C实现允许匿名函数,但您发布的不是其中之一。@n.m.我刚刚理解了什么是逗号运算符,但是在那种情况下。。。他们为什么不使用返回的值?