前回の日記に返信してくださった皆様ありがとうございました。
とりあえず現在の私の解釈はこうなりました。
文字集合…とりあえず「扱える文字はこれだよ!」という文字達
文字符号化形式…どの文字にどんな数値を割り当てるのかの定義
文字符号化方式…文字に割り当てた数値のビット数が8の倍数になるように再定義したもの
文字コード…文字符号化方式によって定義された文字達の内の任意の一文字に割り当てられた数値
なんだかタイトルがあまり関係なくなって来ている気がしますが…^^;
マルチバイト文字とワイド文字Ⅲ
- MoNoQLoREATOR
- 記事: 284
- 登録日時: 14年前
- 住所: 東京
Re: マルチバイト文字とワイド文字Ⅲ
そういえば、全く別の話なのですが C言語のmain関数の戻値は必ずintでなければならないという決まりがある と以前どこかで耳にした気がするのですが本当ですか?
それはC言語としての規格なのでしょうか?C++としての規格なのでしょうか?
それはC言語としての規格なのでしょうか?C++としての規格なのでしょうか?
Re: マルチバイト文字とワイド文字Ⅲ
C言語でもC++でも規格で定められるmain関数は
int main(void)
int main(int argc, char *argv[])
と同等であるか、『それ以外』です。
戻り値がintでないなら、関数名がmainでなくてもかまわないのです。
main関数から開始されるというなら戻り値はintでなければ矛盾します。
int main(void)
int main(int argc, char *argv[])
と同等であるか、『それ以外』です。
戻り値がintでないなら、関数名がmainでなくてもかまわないのです。
main関数から開始されるというなら戻り値はintでなければ矛盾します。
Re: マルチバイト文字とワイド文字Ⅲ
とりあえず,フリースタンディング環境に関してはプログラムのエントリポイントすら処理系定義なのでホスト環境について。
関数名がmainであることは確定として,その上で
関数名がmainであることは確定として,その上で
- JIS X 3010-1993 (=ISO/IEC 9899-1990)
- ISO/IEC 9899:1999
- in some other implementation-defined manner
- ISO/IEC 14882:1998, ISO/IEC 14882:2011
- its (=the main function's) type is implementation-defined
- MoNoQLoREATOR
- 記事: 284
- 登録日時: 14年前
- 住所: 東京
Re: マルチバイト文字とワイド文字Ⅲ
ありがとうございます。よくわかりました。
あれからいろいろ調べてみましたが、私の予想通りコンパイラが自動的に戻値の型をintにしていたりするそうです。
それと、家電機器等の組み込みのプログラムなら、 void main(void) と書いて、わざと値を返さなかったりするそうですね。
あれからいろいろ調べてみましたが、私の予想通りコンパイラが自動的に戻値の型をintにしていたりするそうです。
それと、家電機器等の組み込みのプログラムなら、 void main(void) と書いて、わざと値を返さなかったりするそうですね。