関数に 1 個の引数を指定できません

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

関数に 1 個の引数を指定できません

#1

投稿記事 by 五代 » 15年前

int main(void)

{
double a,f();
a=f(2); //ここで「関数に 1 個の引数を指定できません」のエラー
return(0);}

double f(double x)
{
double y;
y=pow(x,2);
return y;
};
なぜだか全然わかりません。お願いします。

シエル

Re:関数に 1 個の引数を指定できません

#2

投稿記事 by シエル » 15年前

double a,f();
↑このf()はいりません。

double f(double x) ;
↑このプロトタイプ宣言をmain関数の上に書いてください。

五代

Re:関数に 1 個の引数を指定できません

#3

投稿記事 by 五代 » 15年前

解決しました!!
シエルさんありがとうございます!!!!

toyo

Re:関数に 1 個の引数を指定できません

#4

投稿記事 by toyo » 15年前

質問見て思いついたんですがこういうのもありですかね

int main(void)
{
double a,f(double);
a=f(2);
return(0);}

double f(double x)
{
double y;
y=pow(x,2);
return y;
};

シエル

Re:関数に 1 個の引数を指定できません

#5

投稿記事 by シエル » 15年前

そんな書き方もできるんですね。
まったく知りませんでした。
なんかいつも質問者じゃないのに勉強になってしまいますw

たかぎ

Re:関数に 1 個の引数を指定できません

#6

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

解決にはなっていますが...

CでコンパイルすべきものをC++でコンパイルしようとしていませんか?
Cなら最初のソースでもコンパイルできると思います。

五代

Re:関数に 1 個の引数を指定できません

#7

投稿記事 by 五代 » 15年前

たかぎさんのおっしゃる通りVisual c++でやってますが今までCで何の問題もありませんでした。
Visual c++だとダメな時もあるということですか?

たかぎ

Re:関数に 1 個の引数を指定できません

#8

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

> Visual c++だとダメな時もあるということですか?

C++だとダメだということです。
詳細は、↓の「仮引数並びを省略した場合の振る舞い」を参照してください。
http://www.kijineko.co.jp/tech/cpp2c/part3

五代

Re:関数に 1 個の引数を指定できません

#9

投稿記事 by 五代 » 15年前

勉強になりました。
たかぎさん、ありがとうございました。

閉鎖

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