我想知道这两种说法的区别.
这两个语句在"ch“中返回相同的vale。我可能错了,但我认为第二条语句是在我们想要加快程序执行速度时使用的。
发布于 2011-09-12 04:31:54
他们做的事情完全一样。
没有任何区别。
发布于 2011-09-12 04:56:38
getch()有可能是作为宏实现的(除了它作为实际函数的实现)。如果是这样,
ch=getch();将调用宏,并且
(*getch)()将绕过宏定义并调用实际函数。在这种情况下,getch()可能会更快。
实际上,至少在我尝试过的实现中,getch()不是作为宏实现的,两个版本是相同的。
在这两种情况下,(*getch)()都是无缘无故的混淆。
https://stackoverflow.com/questions/7383341
复制相似问题