我到处看到“它几乎是相同的”,或类似的东西… 从GNU C编程教程 : GNU C库中还有一个名为fgetc的函数。 除了getc通常作为一个macros函数实现并且高度优化之外,getc在大多数方面都是一样的,所以在大多数情况下是可取的。 (在从标准input读取的情况下,getc的速度与fgetc一样快,因为与计算机可以读取input的速度相比,人类input的速度较慢,但是当您从不是由人类交互式生成的数据stream读取时, fgetc可能会更好。) 其他的区别是什么? 我听说他们每个人都有一个不同的实现(其中一个可以用作macros),但是,他们在标准C库(或规范)中有什么不同(或不同)呢?