[[FrontPage]] > C/C++

* C/C++言語 [#v2b52709]
1972年にAT&Tベル研究所にて開発された言語で、~
JIS、ANSI等でも規格化されている言語。~
~
自由度、実行速度等にすぐれているが、~
残念ながら安全性は、プログラマー(制作者)に委ねられてしまっている。~
~
※本項目は、[[UNIX]]ベース([[Linux]]含む)な項目がを記載しています。~
[[Windows>MS-WINDOWS]]版のC/C++言語のAPI等は記載して居ません。~

* 入門 [#e5ff551c]
-[[C言語>C]]~
-[[C++言語>C++]]~
~
-[[デバッガ>Debugger]] - 実行モジュールの動作テスト、検証等のコマンド~
-[[make]] - コンパイル等を自動で行う様にするコマンド~

*MEMO [#f2545227]
-[[標準入力(stdin)>stdin]]
-[[標準出力(stdout)>stdout]]
-[[標準エラー(stderr)>stderr]]

*X-Window(X11) [#ydb99cba]
-[[X11]]~
-[[X Toolkit>X-Toolkit]]~
-[[Xaw]]~
-[[Motif]]~
~
-[[Widget]]~
-[[Gadget]]~
-[[WidgetClass]]~
~
* エラー [#z74ce94f]
-[[errno:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/errno.3.html]]~
~
*標準 (stdio.h) [#b3344c51]
-[[printf]] - 出力 (printf、fprintf、sprintf、snprintf)~
-[[scanf]] - 入力 (scanf、fscanf、sscanf)~
~
-[[getchar]] - 1Byteの標準入力~
-[[gets]] - 文字列の標準入力~
-[[puts]] - 文字列の標準出力~
-[[perror]] - 標準エラー出力~
~
-[[fopen]] - ファイル・オープン~
-[[fclose]] - ファイル・クローズ~
-[[feof]] - ファイルの終端チェック~
-[[fread]] - ファイル読み込み~
-[[fwrite]] - ファイル書き込み~
-[[fputc]] - ファイルに1Byte書き込み (putc)~
-[[fputs]] - ファイルに文字列書き込み~
-[[fgetc]] - ファイルから1Byte読み込み (getc)~
-[[fgets]] - ファイルから文字列読み込み~
-[[fseek]] - ファイルの読み書き位置を変更~
-[[fflush]] - 書き込み中のデータを強制書き出し~

*文字列操作 (string.h) [#u1e6fc99]
-[[strcmp]]([[strncmp>strcmp]]) - 文字列比較(文字数指定)~
-[[strcat]]([[strncat>strcat]]) - 文字列結合(文字数指定)~
-[[strcpy]]([[strncpy>strcpy]]) - 文字列コピー(文字数指定)~
-[[strchar]] - 文字検索~
-[[strstr]] - 文字列検索~
-[[strerror]] - エラー番号(errno)に対応した内容の表示~
-[[strlen]] - 文字列数の取得~
-[[memset]] - メモリ設定 (初期化等に使用)~
-[[memcmp]] - メモリ比較~
-[[memcpy]] - メモリコピー~

*Error (errno.h) [#ma126241]
-[[errno]] - エラー番号~

*外部コール (stdlib.h) [#z738930d]
-[[system]]

*時間 (time.h) [#s0e3db68]
-[[time]]~
-[[mktime]]~
-[[localtime]]~
-[[gmtime]]~
-[[asctime]]~
-[[difftime]]~
-[[ctime]]~
-[[stime]]~

*構造体 [#b6c0c7d1]
-[[tm構造体>tm_struct]]~

*遅延処理 [#t1a6a68a]
-[[sleep:http://www.linux.or.jp/JM/html/GNU_sh-utils/man1/sleep.1.html]] - 指定した時間(秒)だけ遅延する~
-[[usleep:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/usleep.3.html]] - 指定した時間(マイクロ秒)だけ遅延~
-[[nanosleep:http://www.linux.or.jp/JM/html/LDP_man-pages/man2/nanosleep.2.html]] - 指定した時間(ナノ秒)だけ遅延~

*コマンド実行 [#wc225056]
-[[system]] - シェルコマンドの実行。~
-[[popen]] - ファイルオープン処理の様に入力または出力結果を操作。~

*ファイル [#v8bbcf5a]
-[[open]] - ファイル・ディスクリプタを開く。~
-[[fcntl]] - ファイル・ディスクリプタの操作。~
-[[close]] - ファイル・ディスクリプタを閉じる。~
~
-[[read]] - 読み出し。~
-[[write]] - 書き出し。~

*通信 [#a84335a6]
-[[socket]] - ソケット生成。~
-[[bind]] - ソケットにアドレスを結合。~
-[[setsockopt]] - ソケットにオプションを設定。~
-[[close]] - ソケットを閉じる。~
~
-[[listen]] - [TCP]接続要求数設定。~
-[[accept]] - [TCP]接続待ち処理。~
-[[connect]] - [TCP]ソケット接続要求。~
~
-[[send]] - [TCP]パケット送信。~
-[[recv]] - [TCP]パケット受信。~
-[[read]] - 読み出し。~
-[[write]] - 書き出し。~
~
-[[recvfrom]] - [UDP]パケット受信。~
-[[sendto]] - [UDP]パケット送信。~
~
-[[gethostname:http://www.linux.or.jp/JM/html/LDP_man-pages/man2/gethostname.2.html]] - 使用中のマシン名の取得。~
-[[gethostbyname:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/gethostbyname.3.html]] - ホスト名からIPアドレス等を取得。~
-[[getaddrinfo:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/getaddrinfo.3.html]] - ホスト名からIPv4、IPv6の情報を取得。~
-[[freeaddrinfo:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/freeaddrinfo.3.html]] - [[getaddrinfo:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/getaddrinfo.3.html]]の解放処理。~
-[[getservbyname:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/getservbyname.3.html]] - サービス名からポート名の取得。~
~
-[[htonl:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/htonl.3.html]] - ホストバイトオーダーからネットワークバイトオーダーに変換~
-[[htons:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/htons.3.html]] - ホストバイトオーダーからネットワークバイトオーダーに変換~
-[[ntohl:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/ntohl.3.html]] - ネットワークバイトオーダーからホストバイトオーダーに変換~
-[[ntohs:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/ntohs.3.html]] - ネットワークバイトオーダーからホストバイトオーダーに変換~
-[[inet_addr:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/inet_addr.3.html]]~
-[[inet_pton:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/inet_pton.3.html]] - IPv4/IPv6 アドレスをテキスト形式からバイナリ形式に変換~
-[[inet_ntop:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/inet_ntop.3.html]] - IPv4/IPv6 アドレスをバイナリ形式からテキスト形式に変換~
-[[inet_ntoa:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/inet_ntoa.3.html]]~
-[[inet_aton:http://www.linux.or.jp/JM/html/LDP_man-pages/man3/inet_aton.3.html]]~
~
-[[select:http://www.linux.or.jp/JM/html/LDP_man-pages/man2/select.2.html]] - 監視。(タイムアウト指定方法 : 秒、マイクロ秒)~
-[[pselect:http://www.linux.or.jp/JM/html/LDP_man-pages/man2/pselect.2.html]] - 監視。(タイムアウト指定方法 : 秒、ナノ秒)~
~
*子プロセス [#fe30f8db]
-[[fork:http://www.linux.or.jp/JM/html/LDP_man-pages/man2/fork.2.html]] - 子プロセス生成。
-[[clone:http://www.linux.or.jp/JM/html/LDP_man-pages/man2/clone.2.html]] - 子プロセス生成。
-[[execve:http://www.linux.or.jp/JM/html/LDP_man-pages/man2/execve.2.html]] - プログラムを実行。

*OpenGL [#u2616ff7]
-[[OpenGL Programing:http://www.komoto.org/opengl/]]

*コーディング規約 [#sdfe846d]
参考にすると統一感のあるコーディングになると思います。~
(プロジェクトにコーディング規約が無い場合に。。。)~
-[[GNUコーディング規約日本語版:http://www.sra.co.jp/wingnut/standards/standards-ja_toc.html]]~
-[[C++ Coding Standard:http://www.possibility.com/Cpp/CppCodingStandard.html]]~
~
*リンク [#acb34c4b]
-[[計算物理のためのC/C++言語入門:http://www-cms.phys.s.u-tokyo.ac.jp/~naoki/CIPINTRO/]]
~
*X-WINDOWS & X Toolkit & Motif MEMO [#gb4866c1]
-[[XtSetValuesとXtVaSetValues>XtSetValues,XtVaSetValues]]
-[[インクリメントについて>Xt_Increment_Memo]]
-[[デバッグ文字列の注意事項>Debug-Warning]]
-[[Open Motif:http://www.opengroup.org/openmotif/]]
-[[Motif による GUI プログラミング:http://www.edu.t.soka.ac.jp/~unemi/Motif/]]
-[[グラフィックのちらつき防止>GRAPHIC-FLICKER-BLOCK]]
-[[Xt、Xmからグラフィックの使用>Xt-GRAPHIC-CALL]]
-[[X-Window Programming:http://www-yano.is.tokushima-u.ac.jp/~mituhara/software_e/]]
-[[X11 イベント(定数、構造体):http://www1.u-netsurf.ne.jp/~ozawa/prog/event/x.html]]
-[[Xlib - C Language X Interface:http://xjman.dsl.gr.jp/X11R6/X11/]]
--[[Xlib - 10章(Events):http://xjman.dsl.gr.jp/X11R6/X11/CH10.html]]

* メモ [#m4961b8e]
-[[OpenCOBOL:http://jp.opencobol.org/]]~
COBOLのソースコードをC言語のコードに変換するオープンソースCOBOLコンパイラ~
-[[gcc のデバッグ術:http://www-or.amp.i.kyoto-u.ac.jp/algo-eng/db/debug.html]]
-[[(2008/12/10) 並列プログラミング規格「OpenCL 1.0」が標準として批准 − @IT:http://www.atmarkit.co.jp/news/200812/10/opencl.html]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS