OSDN Git Service

SDL_HINT_RENDER_DRIVER metalを追加した https://wiki.libsdl.org/SDL_HINT_RENDER_DRIVER...
[sdl2referencejp/sdl2referencejp.git] / SDL_RWread.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">\r
2 <html lang="ja-JP">\r
3 <head>\r
4 <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">\r
5 <meta http-equiv="Content-Style-Type" content="text/css">\r
6 <meta name="keywords" content="Simple Directmedia Layer SDL2.0">\r
7 <link rel="top" href="index.html" title="\83z\81[\83\80">\r
8 <link rel="parent" href="CategoryIO.html" title="1\82Â\8fã">\r
9 <title>SDL_RWread</title>\r
10 </head>\r
11 <body>\r
12 <a href="index.html">\96Ú\8e\9f</a> - <a href="ApiByCategory.html">API(\8b@\94\\95Ê)</a> - <a href="CategoryIO.html">\83t\83@\83C\83\8b\93ü\8fo\97Í</a> - SDL_RWread\r
13 <hr>\r
14 <h1>SDL_RWread</h1>\r
15 \83f\81[\83^\8c³\82©\82ç\93Ç\82Ý\8d\9e\82Þ\r
16 <h2>\8d\\95¶</h2>\r
17 <code>size_t SDL_RWread(struct SDL_RWops* context, void* ptr, size_t size, size_t maxnum)</code>\r
18 <h2>\88ø\90\94</h2>\r
19 <table border="1" summary="">\r
20 <tr><td>context</td><td><a href="SDL_RWops.html">SDL_RWops</a>\82Ö\82Ì\83|\83C\83\93\83^</td></tr>\r
21 <tr><td>ptr</td><td>\93Ç\82Ý\8d\9e\82ñ\82¾\83f\81[\83^\82ð\8f\91\82«\8d\9e\82Þ\83|\83C\83\93\83^</td></tr>\r
22 <tr><td>size</td><td>1\82Â\82Ì\83I\83u\83W\83F\83N\83g\82Ì\83o\83C\83g\90\94</td></tr>\r
23 <tr><td>maxnum</td><td>\93Ç\82Ý\8d\9e\82Þ\8dÅ\91å\82Ì\83I\83u\83W\83F\83N\83g\90\94</td></tr>\r
24 </table>\r
25 <h2>\96ß\82è\92l</h2>\r
26 \93Ç\82Ý\8d\9e\82ñ\82¾\83I\83u\83W\83F\83N\83g\82Ì\90\94\82ð\96ß\82·. \8e¸\94s\82Ü\82½\82Í\83t\83@\83C\83\8b\82Ì\8fI\92[\82Ì\82Æ\82«0\82ð\96ß\82·.\r
27 <a href="SDL_GetError.html">SDL_GetError()</a>\82Å\8fÚ\8d×\82ð\92m\82é\82±\82Æ\82ª\82Å\82«\82é.\r
28 <h2>\83T\83\93\83v\83\8b\83R\81[\83h</h2>\r
29 <p>\r
30 <code>\r
31 <pre>\r
32 SDL_RWops *rw = SDL_RWFromFile("test.bin","r");\r
33 if (rw != NULL) {\r
34     extern Uint8 buf[256];\r
35     SDL_RWread(rw, buf, sizeof (buf), 1);\r
36     SDL_RWclose(rw);\r
37 }\r
38 </pre>\r
39 </code>\r
40 </p>\r
41 <p>\r
42 \83t\83@\83C\83\8b\82ð\93Ç\82Ý\8d\9e\82Þ\8a®\91S\82È\83R\81[\83h\82Í\8e\9f\82Ì\92Ê\82è\82Å\82 \82é. (\83T\83C\83Y\82ª\93¾\82ç\82ê\82é\82Æ\89¼\92è\82µ\82Ä\82¢\82é) (<a href="https://gitlab.com/wikibooks-opengl/modern-tutorials/blob/master/common-sdl2/shader_utils.cpp">OpenGL WikiBook</a>\82æ\82è):\r
43 <code>\r
44 <pre>\r
45 char* file_read(const char* filename) {\r
46         SDL_RWops *rw = SDL_RWFromFile(filename, "rb");\r
47         if (rw == NULL) return NULL;\r
48 \r
49         Sint64 res_size = SDL_RWsize(rw);\r
50         char* res = (char*)malloc(res_size + 1);\r
51 \r
52         Sint64 nb_read_total = 0, nb_read = 1;\r
53         char* buf = res;\r
54         while (nb_read_total &lt; res_size && nb_read != 0) {\r
55                 nb_read = SDL_RWread(rw, buf, 1, (res_size - nb_read_total));\r
56                 nb_read_total += nb_read;\r
57                 buf += nb_read;\r
58         }\r
59         SDL_RWclose(rw);\r
60         if (nb_read_total != res_size) {\r
61                 free(res);\r
62                 return NULL;\r
63         }\r
64 \r
65         res[nb_read_total] = '\0';\r
66         return res;\r
67 }\r
68 </pre>\r
69 </code>\r
70 </p>\r
71 <h2>\8fÚ\8d×</h2>\r
72 <p>\r
73 \82»\82ê\82¼\82êsize\83o\83C\83g\82Ì\8dÅ\91ånum\8cÂ\82Ì\83I\83u\83W\83F\83N\83g\82ð\93Ç\82Ý\8d\9e\82Ýptr\83|\83C\83\93\83^\82Ö\8f\91\82«\8d\9e\82Þ.\r
74 \93Ç\82Ý\8d\9e\82Þ\83I\83u\83W\83F\83N\83g\82Ì\90\94\82Í\97v\8b\81\82Ì\90\94\82æ\82è\8f­\82È\82¢\8fê\8d\87\82ª\82 \82é.\r
75 \83G\83\89\81[\82ª\94­\90\82µ\82½, \82Ü\82½\82Í\83f\81[\83^\83X\83g\83\8a\81[\83\80\82ð\8a®\91S\82É\93Ç\82Ý\8d\9e\82ñ\82¾\8fê\8d\87\82Í0\82ð\96ß\82·.\r
76 </p>\r
77 <p>\r
78 <a href="SDL_RWread.html">SDL_RWread()</a>\82Í\8eÀ\8dÛ\82É\82Í<a href="SDL_RWops.html">SDL_RWops</a>\82Ìread\83\81\83\\83b\83h\82ð\8cÄ\82Ô\83}\83N\83\8d\82Å\82 \82é.\r
79 </p>\r
80 <h3>\97á</h3>\r
81 <p>\r
82 <code>\r
83 <pre>\r
84 Uint32 buffer[10];\r
85 SDL_RWread(rwop, buffer, sizeof(Uint32), 10);\r
86 </pre>\r
87 </code>\r
88 32bit\90®\90\94\82ª\95Û\91\82³\82ê\82Ä\82¢\82é\82±\82Æ\82ð\91z\92è\82µ\82Ä\82¢\82é. 40byte\82Ì\83f\81[\83^\82ð\93Ç\82Ý\8d\9e\82Ý, buffer\82É\8f\91\82«\8d\9e\82Þ.\r
89 \82»\82ê\82¼\82ê\82ÌUint32\82Í4byte, 32bit\82Å\82 \82é.\r
90 </p>\r
91 <p>\r
92 <code>\r
93 <pre>\r
94 Uint64 buffer[10];\r
95 SDL_RWread(rwop, buffer, sizeof(Uint64), 10);\r
96 </pre>\r
97 </code>\r
98 64bit\90®\90\94\82ª\95Û\91\82³\82ê\82Ä\82¢\82é\82±\82Æ\82ð\91z\92è\82µ\82Ä\82¢\82é. 80byte\82Ì\83f\81[\83^\82ð\93Ç\82Ý\8d\9e\82Ý, buffer\82É\8f\91\82«\8d\9e\82Þ.\r
99 \82»\82ê\82¼\82ê\82ÌUint64\82Í8byte\82Å, 10\8cÂ\82Ì\92l\82ð\93Ç\82Ý\8d\9e\82Þ.\r
100 </p>\r
101 <h2>\8aÖ\98A\8d\80\96Ú(\8aÖ\90\94)</h2>\r
102 <a href="SDL_RWclose.html">SDL_RWclose</a><br>\r
103 <a href="SDL_RWFromConstMem.html">SDL_RWFromConstMem</a><br>\r
104 <a href="SDL_RWFromFile.html">SDL_RWFromFile</a><br>\r
105 <a href="SDL_RWFromFP.html">SDL_RWFromFP</a><br>\r
106 <a href="SDL_RWFromMem.html">SDL_RWFromMem</a><br>\r
107 <a href="SDL_RWseek.html">SDL_RWseek</a><br>\r
108 <a href="SDL_RWwrite.html">SDL_RWwrite</a><br>\r
109 <h2>SDL Wiki\82Ö\82Ì\83\8a\83\93\83N</h2>\r
110 <a href="https://wiki.libsdl.org/SDL_RWread">SDL_RWread - SDL Wiki</a>\r
111 <hr>\r
112 </body>\r
113 </html>\r