説明
28GO、GOは開発環境なので、当然ライブラリを持っています。複数ありますが各々用途によって分けています。
- golibc.lib
- 基本、システムやOSに依存しない関数のみを集めています。(しいて言えばx86型CPUのみに依存する関数)
- w32clibc.lib
- Windowsのみに依存するもの達
- gg00libc.lib
- 「guigui00仕様」に依存する関数達。(平たく言うと第一世代OSASK用の関数)
- gg01libc.lib
- 「guigui01仕様」に依存する関数達。(平たく言えばefg01に依存する関数)
- mingwlibc.lib
- MinGW郡の「w32apiパッケージ」から摘出したものです。本来はw32clibcに含まれる位置づけですが、ライセンス防衛等の理由からあえて分かれています。(当然、Windowsに依存する関数郡ということになります)
28GO、GOのライブラリは基本、ANSI Cの仕様に準拠する気はないという作りになっています。どうせ独自仕様のAPIやOSを駆使するものなのですから、無理にANSIに準拠して設計等が制限されるのも意味がないことですしね。
もちろん、別物にするのが目的ではありません。似せたり準拠しても問題ないものは不必要に独自にせず、ANSIの仕様を参考にして実装しています
ANSI C 対応表
- 但し完全にANSI Cの定義と同じ動作をするとは限らない
- OS、システムに依存しないものはgolibc内のものをコールしているので、基本的にはgolibc.lib内にあるものはみな他のOS、システムからも使用できる
stdio.h
ANSI C | golibc.lib | gg00libc | gg01libc | w32libc |
fopen | ○ | |||
fclose | ○ | |||
fgetc | ○ | |||
getc | ○ | |||
fgets | ○ | |||
fputc | ○ | |||
putc | ||||
fputs | ○ | |||
fread | ○ | |||
fwrite | ○ | |||
fprintf | ○ | |||
fscanf | ||||
ftell | ○ | |||
fseek | ○ | |||
fgetpos | ||||
fsetpos | ||||
feof | ○ | |||
ferror | ||||
clearerr | ||||
fflush | ○ | |||
freopen | ||||
rename | ||||
remove | ○ | |||
getchar | ○ | |||
putchar | ○ | |||
gets | ○ | |||
puts | ○ | |||
perror | ||||
printf | ○ | |||
scanf | ||||
sprintf | ○ | ○ | ○ | ○ |
※vfprintf | ○ | |||
※vprintf | ○ | |||
※clearerr | ○ | |||
※rewind | ○ | |||
※ungetc | ○ |
stdlib.h
ANSI C | golibc.lib | gg00libc | gg01libc | w32libc |
malloc | ○ | ○ | ○ | |
calloc | ||||
realloc | ||||
free | ○ | ○ | ○ | |
abs | ○ | ○ | ○ | ○ |
labs | ||||
atof | ○ | ○ | ○ | ○ |
atoi | ○ | ○ | ○ | ○ |
atol | ||||
strtod | ○ | ○ | ○ | |
strtol | ○ | ○ | ○ | ○ |
strtoul | ○ | ○ | ○ | ○ |
※strtoul0 | ○ | |||
div | ||||
ldiv | ||||
rand | ○ | ○ | ○ | ○ |
srand | ||||
exit | ○ | |||
abort | ○ | |||
atexit | ||||
getenv | ||||
bsearch | ||||
qsort | ○ | ○ | ○ | ○ |
system | ○ | |||
※errno | ○ |
ctype.h
ANSI C | golibc.lib | gg00libc | gg01libc | w32libc |
isalpha | ||||
isupper | ||||
islower | ||||
isdigit | ||||
isspace | ||||
isalnum | ||||
iscntrl | ||||
isgraph | ||||
isprint | ||||
ispunct | ||||
isxdigit |
string.h
ANSI C | golibc.lib | gg00libc | gg01libc | w32libc |
strcpy | ○ | ○ | ○ | ○ |
strncpy | ○ | ○ | ○ | ○ |
strcat | ○ | ○ | ○ | ○ |
strncat | ○ | ○ | ○ | ○ |
strlen | ○ | ○ | ○ | ○ |
strcmp | ○ | ○ | ○ | ○ |
strncmp | ○ | ○ | ○ | ○ |
strchr | ○ | ○ | ○ | ○ |
strrchr | ○ | ○ | ○ | ○ |
strcspn | ○ | ○ | ○ | ○ |
strspn | ○ | ○ | ○ | ○ |
strpbrk | ○ | ○ | ○ | ○ |
strstr | ○ | ○ | ○ | ○ |
strtok | ||||
strerror | ||||
memcpy | ○ | ○ | ○ | ○ |
memmove | ○ | ○ | ○ | ○ |
memset | ○ | ○ | ○ | ○ |
memcmp | ○ | ○ | ○ | ○ |
memchr | ○ | ○ | ○ | ○ |
※strdup | ○ | ○ | ○ | ○ |
Counter: 361,
today: 2,
yesterday: 0
初版日時: 2010-02-06 (土) 00:00:00
最終更新: 2010-02-06 (土) 00:00:00 (JST) (349d) by lina
|
ぺージ情報 | 閲覧可 | 編集可 | |||
---|---|---|---|---|---|---|
ぺージ名 : | 28GO/ライブラリ | グループ : | すべての訪問者 | グループ : | 登録ユーザ | |
ページ作成 : | lina | ユーザー : | すべての訪問者 | ユーザー : | なし | |
ページ別名 : | 未設定 |