C语言函数调用后花括号的含义
发布时间:2020-12-16 10:23:45 所属栏目:百科 来源:网络整理
导读:我正在阅读关于Doom 3源代码的代码质量的博客文章,我已经陷入了一段我无法理解的C代码.我应该说我不是C程序员. 违规代码如下: Sys_StartAsyncThread(){ // The next look runs is a separate thread. while ( 1 ){ usleep( 16666 ); // Run at 60Hz common-
我正在阅读关于Doom 3源代码的代码质量的博客文章,我已经陷入了一段我无法理解的C代码.我应该说我不是C程序员.
违规代码如下: Sys_StartAsyncThread(){ // The next look runs is a separate thread. while ( 1 ){ usleep( 16666 ); // Run at 60Hz common->Async(); // Do the job Sys_TriggerEvent( TRIGGER_EVENT_ONE ); // Unlock other thread waiting for inputs pthread_testcancel(); // Check if we have been cancelled by the main thread (on shutdown). } } (取自http://fabiensanglard.net/doom3/index.php,主题为“展开循环”) 这看起来像一个闭包被作为参数传递给Sys_StartAsyncThread()的返回值 – 但据我所知,这在C中是不可能的,并且Sys_StartAsyncThread()也是void类型,所以这里发生了什么? 可以在here找到Sys_StartAsyncThread()的定义. 解决方法
它看起来像一个错字.根据
here,在Sys_StartAsyncThread();之后应该有一个分号.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |