C++の基本文法について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
kkk

C++の基本文法について

#1

投稿記事 by kkk » 14年前

Cに関数ってのがありますよね?
なぜ関数をいくつもつくるのでしょうか?
ひとつのところにただただ命令をかいていけばいいのじゃないでしょうか?

素人意見ですが答えてくれると幸いです

アバター
h2so5
副管理人
記事: 2212
登録日時: 14年前
住所: 東京
連絡を取る:

Re: C++の基本文法について

#2

投稿記事 by h2so5 » 14年前

関数を使わない場合、同じような処理を何度も実行したい時に、
その都度処理を書くのが面倒になってしまいます。
もちろん必要がなければ無理に関数にしてしまう必要は有りませんが。
kkk さんが書きました: ひとつのところにただただ命令をかいていけばいいのじゃないでしょうか?
ちなみにその『命令』も関数なので関数がなかったらプログラムが書けません。
(アセンブリ使うなら別かもしれませんが)

暇なプログラマ
記事: 4
登録日時: 14年前
連絡を取る:

Re: C++の基本文法について

#3

投稿記事 by 暇なプログラマ » 14年前

関数もなしに、書いていくと・・・・・関数の素晴らしさがわかって来るよ。

長くなってくると、同じことを何度も何度も書くのよ。
何度も同じ処理を書くのに時間が馬鹿にできないし、
いざ、修正を行うと、すべてを見直さないといけない。(当然見落としが多くなる)


第一、同じ処理を書くのが面倒
第二、処理ごとに分ければ、見やすくなる、
第三、修正が簡単
 ・
 ・

といろいろと出てくるのよ。
特に!第二、と第三、

まぁ一人だけでやるぜ!!!
書いたことすべて覚えているぜ!
って人はすごいけどね。

ちなみに、、、printf(); ←これも関数よ! 

box
記事: 2002
登録日時: 14年前

Re: C++の基本文法について

#4

投稿記事 by box » 14年前

kkk さんが書きました: ひとつのところにただただ命令をかいていけばいいのじゃないでしょうか?
1回だけしか使わないような使い捨てのプログラムとか、
自分さえ内容がわかっていればいいようなプログラムとか、
チームで分担して開発しないようなプログラムとかだったら、
main関数やWinMain関数にすべての処理を押し込んでもいっこうにかまわないと思います。

# 基本文法について、というタイトルと質問内容とが合ってるのかな?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

たかぎ
記事: 328
登録日時: 14年前
住所: 大阪
連絡を取る:

Re: C++の基本文法について

#5

投稿記事 by たかぎ » 14年前

関数を一切使わずに、たとえばHello, World!を書いてみれば、それがどれだけ大変かわかります。
具体的には...

コード:

int main(void)
{
  const char *s = "Hello, World!\n";
  while (*s != '\0')
  {
    int c = *s++;
    /* 1文字出力 */
  }
  return 0;
}
さて、ここでコメントにしてある1文字出力をどう実現しますか?
putcharなどの関数は使えません(関数を一切使わずに書くわけですから)。
だとすると、ハードウェアを直接制御するしかなくなります。
たとえば、VRAMや制御レジスタに直接書き込む必要が出てくるわけです。

関数が使えないのでOSの機能を使うことは一切できなくなります。
それとも、MS-DOSのようにソフトウェア割り込みやトラップをインラインアセンブラで記述しますか...

閉鎖

“C言語何でも質問掲示板” へ戻る