nls.h

来自「自己做的交叉编译工具!gcc-3.4.5,glibc-2.3.6在ubuntu8」· C头文件 代码 · 共 65 行

H
65
字号
#ifndef _LINUX_NLS_H#define _LINUX_NLS_H#include <linux/init.h>/* unicode character */typedef __u16 wchar_t;struct nls_table {	char *charset;	char *alias;	int (*uni2char) (wchar_t uni, unsigned char *out, int boundlen);	int (*char2uni) (const unsigned char *rawstring, int boundlen,			 wchar_t *uni);	unsigned char *charset2lower;	unsigned char *charset2upper;	struct module *owner;	struct nls_table *next;};/* this value hold the maximum octet of charset */#define NLS_MAX_CHARSET_SIZE 6 /* for UTF-8 *//* nls.c */extern int register_nls(struct nls_table *);extern int unregister_nls(struct nls_table *);extern struct nls_table *load_nls(char *);extern void unload_nls(struct nls_table *);extern struct nls_table *load_nls_default(void);extern int utf8_mbtowc(wchar_t *, const __u8 *, int);extern int utf8_mbstowcs(wchar_t *, const __u8 *, int);extern int utf8_wctomb(__u8 *, wchar_t, int);extern int utf8_wcstombs(__u8 *, const wchar_t *, int);static inline unsigned char nls_tolower(struct nls_table *t, unsigned char c){	unsigned char nc = t->charset2lower[c];	return nc ? nc : c;}static inline unsigned char nls_toupper(struct nls_table *t, unsigned char c){	unsigned char nc = t->charset2upper[c];	return nc ? nc : c;}static inline int nls_strnicmp(struct nls_table *t, const unsigned char *s1,		const unsigned char *s2, int len){	while (len--) {		if (nls_tolower(t, *s1++) != nls_tolower(t, *s2++))			return 1;	}	return 0;}#define MODULE_ALIAS_NLS(name)	MODULE_ALIAS("nls_" __stringify(name))#endif /* _LINUX_NLS_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?