サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ブラックフライデー
sometime.minidns.net/~ccgi
C言語のファイル入出力には高水準(バッファリング付き)のものと低水準のものがありますが、低水準のファイル入出力関数はANSIで規定されていません。それに、低水準のファイル入出力は何かとめんどくさいので、ファイル入出力は可能な限り高水準ファイル入出力で押し通すという方針で行います。 ファイル入出力の一般的な流れは次のようになります。 ファイルを適切なモードでオープンする(fopen()) 入力や出力などの処理をする(fgets(),fputs()など) ファイルをクローズする 基本的な作法として、入出力の前にファイルをオープンし、処理が終わったらファイルをクローズすることになっています。高水準ファイル入出力の場合、これらの処理はすべてファイルポインタを介して行います。ファイルポインタはFILE構造体へのポインタで、FILE構造体がメンバとして持っている現在の位置などを使用してファイルへの入出
文字コードセットの判別を行うプログラムは現在のところ作っていません。その理由を解説します。 文字符号化方法の指定とaccept-charset meta要素を用いて文字符号化方法を指定することで、HTML文書に使用する文字コードセットを指定することができます。Webブラウザが文字列をフォームから送信する場合、指定された文字コードセットで送信することが慣例となっているようです。これは、HTML 4.01でform要素に規定されているaccept-charset属性に関する以下の記述によります。 The default value for this attribute is the reserved string "UNKNOWN". User agents may interpret this value as the character encoding that was used to
Cの言語仕様そのものには正規表現は含まれていないので、C言語で正規表現を扱うには何らかのライブラリを利用する必要があります。ここでは、POSIX準拠のregex.hを利用して正規表現の処理を行います。 UNIXライクなOSなど、POSIX準拠のシステムであれば使用できるはずです。このページのサンプルなどはLinux上のgcc-2.96でテストを行っています。 使用方法 regex.hでの正規表現の基本的な使用方法を簡単に述べると、次のようになります。 regcomp()で正規表現をコンパイル regexec()で実行 regfree()でコンパイルした正規表現を解放 多少面倒なように見えますが、正規表現ライブラリとしてはごく一般的な手順です。正規表現による検索処理の前に正規表現の文字列をコンパイルし、検索処理を行った後に処理に使ったバッファを解放する必要があります。 ということで、関数をひ
ポインタは、実際には変数なので、配列にすることもできます。ここでは、ポインタ配列を動的に確保する場合の注意点や、多次元配列と動的確保によって作り出した擬似的な多次元配列との違いなどを解説します。 ポインタ配列とは 変数は配列を考えることができますね。たとえば、次の例ではchar型変数10個の配列を宣言しています。 char charray[10]; ポインタといっても変数なので、他の型と同じように配列を宣言して使うことができます。 char* chr_ptr[10]; このポインタの配列とは何なのでしょうか。2次元配列のことをポインタの配列だという人がたまにいますが、ちょっと違います。ポインタの配列は2次元配列などではなくあくまでもポインタ変数の配列で、上のように宣言したものは1次元配列です。メモリの確保のされ方からいって、2次元配列とポインタ配列は全く違うものです。 ポインタ配列とメモリ
C言語で掲示板などのCGIプログラムを作る方法を解説します。領域のサイズを自動調整する文字列処理ライブラリ、Cでの正規表現の使い方、フォームデータとCookieの処理などの解説があります。
このページを最初にブックマークしてみませんか?
『C-CGI』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く