我想了解别人编写的C代码,并且遇到了一段代码,我不明白所有的语法和部分我不明白我不知道如何搜索。我希望得到解释或关于如何搜索我可能会遇到的其他类似事情的信息,或者两者兼而有之。有问题的代码是下面的行:不熟悉的C语法?
int r = uv_listen((uv_stream_t*) &server, 128, on_new_connection);
据我所知,r是正被声明和初始化为“uv_listen()”由该函数返回值的变量,128是文字INT paramater,on_new_connection必须是函数指针,因为这是所调用的回调函数的名称。服务器是一个自定义类型的变量(uv_tcp_t),它与&指的是服务器的地址。我不明白的是“(uv_stream_t *)&服务器”。看起来这是该函数的参数之一。我可以理解一个函数调用,它返回一个值作为参数,但这看起来不像函数调用。 “uv_stream_t”是在他们的代码中定义的另一个自定义类型。
我不知道它是否有助于理解它的含义,但代码行来自示例代码,以帮助理解如何使用libuv。