[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freewnn:00312] Re: jutil



小野寛生です

何点かは、手元の資料で解決してしまいました。 _o_

From: Hiroo ONO <hiroo@oikumene.gcd.org>
Date: Sat, 12 Feb 2000 07:27:41 +0900

> 2. extern?
>  Xsi/Wnn/jutil/ 以下の .c ファイルには、prototype 宣言が
>  となっているのですが、extern って何故ついているのでしょう???

C FAQ に、
1.11:   関数宣言についたexternは何を意味するのか。
A:      こういう書き方をすることで、関数の定義がたぶん別のソースファイ
        ルにあるということを、ほのめかすことができる。しかし以下の2つ
        に違いはない。
                extern int f();
                int f();
        References: ANSI Sec. 3.1.2.2, Sec. 3.5.1; ISO Sec. 6.1.2.2,
        Sec. 6.5.1; Rationale Sec. 3.1.2.2; H&S Secs. 4.3,4.3.1 pp. 75-
        6.
とありました。

> % ほかにも、ujisf.c の関数は他で使われているので、いちいちプロトタイプ
> % 宣言せずに、ujisf.h を作って include した方がよいかもしれない、とか。

こっちは、

1.7:    外部変数を宣言、定義する一番よい方法は。
A:       一番よい取り決め
        (arrangement)は、各定義を関連する.cファイルに置き、外部宣言を
        ヘッダファイル(".h")に置くことである。そしてヘッダファイル
        を宣言が必要になったら必ず#includeする。定義をふくんだ
        (contain).cファイルも同じヘッダファイルを#includeして、コン
        パイラが定義と宣言を照らし合わせることができるようにする。

とあったので、そうすることにしました。
いずれ、現在の仕様のままこの辺りを修正したものを、動作確認後 feedback 
しますので、1.2 にでも入れて下さい。

ついでに。
以前、片山さんが [freewnn:00088] で、インデンテーションも直しましょう
とおっしゃっていますが、どのようにすれば良いのでしょうか。
 * indent を通す
 * emacs の c-mode なり、 c++-mode なりの設定を決めて配布
とか、基準だけでなく方法も教えて頂けると楽でよいのですが…
----
Hiroo ONO

%ああ、何故か家にあるはずの K&R 第2版も Practical C も見つからない…。