このプログラムは、ANSI C です

ホームページにカウンターを付けてみませんか ?
といっても、インターネット上には、もっと綺麗で、格好良く、フリーのプログラムがあります
しかし、良かったら使ってください
ソースファイルの、カウントを記録するファイルのディレクトレリや、ロックファイルを作成するディレクトリを、自分の環境に合わせて、書き換えてください
そして、コマンドラインで実行して、うまく行ってから、ホームページに載せましょう
それから、分からない事は、気軽に電子メールを送ってください
しかも、自分の大学の WWW Sever しか、確実な方法は、知りませんので、電子メールでの質問に答えられるかどうか.....(^_^)

第一版
(忘却のかなた) MS-DOS 版....
第一版2
(2005/11/18) Win32上の MS-VisualC++6.0SP6 でコンパイルしたものを同梱した。
一応、著作権を保持するようにした。
第一版3
(2019/11/07) ライセンスを BSD にした。32Bit以上の数値に対応した。



ソースの中の isdigit(a) が、暴走(カウントが 48 で止まる(自分の大学の sever))するので(原因不明で(^_^))
そこの if 文は、はずした方がいいかもしれません

一応、著作権は保持します。プログラムの実行・改変においては、各自自分の責任でしてください。

利用対象者
  1. プログラミングの経験が少しある。
  2. C のソースをコンパイルできる。
  3. C を少し知っている。

download
source file & MS-DOS Binary & Win32 Binary
count_c.lzh (48,978byte) (count_c.lzh.base64)
リターン・コードは、UNIX 系です

使い方、及びソースの説明

8 - 13 行目は、変数を宣言しています
12 行目と 13 行目は、カウントファイルとロックファイルを指定しています

えっと、既に別にこのプログラムが動いていて、これも、そのまま続ければ、同時に、カウントファイル(カウント数を記録するファイル)をアクセスする事になり、カウントファイルを壊す可能性があります
そこで
15 - 38 行目は、ロックファイルの cou_temp.txt が存在すれば(ファイルオープンしてエラーにならない)、 18 - 33 行目を実行します
その後に、もう一度チェックして、まだあれば、もう一度 18 - 33 行目を実行します
無ければ、次に進みます
そして、 5000 回、チェックしても、次に進めなければ、別のエラーの可能性が在るので、エラーを表示して終了します( 28 - 32 行目)
40 - 48 行目は、同時アクセス防止のための、ロックファイルを作成します
50 - 55 行目は、カウントファイルをオープンします
56 行目は、カウントファイルから入力します
60 - 69 行目は、カウントファイルから入力したデータが、数字かどうかチェックします(自分の大学では、カウントが 48 になると、エラーをするので、自分の Home Page では、外してあります(^_^))
数字ならば、a=a+1 をして、標準出力に出力します
71 - 79 行目は、カウントファイルに書き込みます
82 行目は、ロックファイルを削除します

注意は、カウントファイルや、ロックファイルを読み込む fopen() や 削除する remove() 関数のディレクトリ(またはフォルダ)を、しっかり!指定してください
大概のエラーは、ディレクトリ(フォルダ)関連とアクセス権限だと思います。
IIS 4.0 では SSI のカレントディレクトリに注意してくださいね

注意は、カウントファイルを、あらかじめ用意してください。

これを、 SSI (Sever Side Include) の文書に

<!--#exec cmd="count_c.exe"-->のタグを入れれば O.K. です
(ディレクトリ(またはフォルダ)をしっかり指定してください)

なにかあればmail to active@window.goukaku.com