浏览我的GCC标头stddef.h
时,我遇到了一种从未听说过的类型rune_t
:
#if defined (__FreeBSD__) && (__FreeBSD__ >= 5)
#if !defined (_ANSI_SOURCE) && !defined (_POSIX_SOURCE)
#if __BSD_VISIBLE
#ifndef _RUNE_T_DECLARED
typedef __rune_t rune_t; /* <--- Here it is */
#define _RUNE_T_DECLARED
#endif
#endif
#endif
#endif
根据周围的#if
,我猜它是FreeBSD特定的类型,但是它代表什么呢?
奖金问题:与runic alphabet有什么关系?
答案 0 :(得分:5)
符文
不推荐使用4.4BSD
rune
函数,而支持ISO C99扩展的多字节和宽字符功能,因此不应在新的应用程序中使用。考虑使用setlocale(3),mbrtowc(3),wcrtomb(3),fgetwc(3),ungetwc(3)和fputwc(3)。
它曾经是处理扩展字符集的东西。外来字符有时被戏称为“符文”,因此得名。这种类型可能支持也可能不支持实际的符文字母。