OSDN Git Service

libtest:ライブラリテスト用ソースを追加。
[chnosproject/CHNOSProject.git] / CHNOSProject / chn / chnlib04.c
1 //\r
2 //  chnlib04.c\r
3 //  AI003\r
4 //\r
5 //  Created by 西田 耀 on 13/02/10.\r
6 //  Copyright (c) 2013年 Hikaru Nishida. All rights reserved.\r
7 //\r
8 \r
9 //\r
10 //Include headers\r
11 //\r
12 \r
13 #include <stdio.h>\r
14 #include "chnlib.h"\r
15 \r
16 //\r
17 //Functions(UTF-8)\r
18 //\r
19 \r
20 int CHNLIB_UTF8_GetCharacterType(char c)\r
21 {\r
22     //UTF-8文字列中の1バイトcが、UTF-8文字列中でどのような役割を持つのかを返す。\r
23     if(((c >> 6) & 3) == 2){\r
24         //マルチバイト後続バイト\r
25         //10xxxxxx\r
26         return 0;\r
27     } else if(((c >> 7) & 1) == 0){\r
28         //1Byte\r
29         //7bit\r
30         //0xxxxxxx\r
31         return 1;\r
32     } else if(((c >> 5) & 7) == 6){\r
33         //2Byte\r
34         //11bit\r
35         //110xxxxx\r
36         return 2;\r
37     } else if(((c >> 4) & 15) == 14){\r
38         //3Byte\r
39         //16bit\r
40         //1110xxxx\r
41         return 3;\r
42     } else if(((c >> 3) & 31) == 30){\r
43         //4Byte\r
44         //21bit\r
45         //11110xxx\r
46         return 4;\r
47     }\r
48     \r
49     return 0;\r
50 }\r
51 \r
52 \r
53 \r