POSIX实现的状态
我刚刚发现原来是GNU扩展的getline()
函数现在是POSIX 2008标准的一部分。
是否支持这个版本的POSIX有多广泛概述?
我会继续使用它。 有可能实现getline
(但不是更强大的getdelim
)作为fgets
一个非常快速/高效的包装器,所以如果你愿意这样做作为后备,使用getline
并不能真正使你的程序不那么便携。 (比如使用__fpending
,它无法实现,并且需要特定于实现的黑客来模拟。)
当然, getline
和getdelim
都可以简单地在flockfile
/ funlockfile
和fgetc
之上实现。 它不是很有效,但它可以在任何地方工作。