変数(配列)の代入でエラーが出る原因は – プログラミング – Home

変数(配列)の代入でエラーが出る原因は
 
通知
すべてクリア

[解決済] 変数(配列)の代入でエラーが出る原因は


みのすけ
 みのすけ
(@みのすけ)
ゲスト
結合: 22年前
投稿: 64
Topic starter  

VC++ 初心者です。
VC++6.0 MFC ダイアログボックスでプログラムを作っています。

また、基本的な質問で申し訳ありませんが、お願いします。
下の様なプログラムでエラーが出ます。

申し訳ありませんが、対策を教えて下さい。

int i;
float c(10);

for(i=0;i<11;i++) c(i)=0;

(エラー内容)error C2064: 関数ポインタとして評価されない式を使って、関数を呼び出そうと
しました。


引用未解決
トピックタグ
ゆい
 ゆい
(@ゆい)
ゲスト
結合: 22年前
投稿: 2
 

>float c(10);
は配列ではなくfloat c = 10;と同値です。
>c(i) = 0;
という記述はちょっと意味不明です。


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 23年前
投稿: 1301
 

丸括弧() じゃなくて カギ括弧[]。


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 23年前
投稿: 1301
 

あ、for文でオーバーランしてる...


返信引用
ぱふ
 ぱふ
(@ぱふ)
ゲスト
結合: 22年前
投稿: 5
 

>>float c(10);
>は配列ではなくfloat c = 10;と同値です。
>>c(i) = 0;
>という記述はちょっと意味不明です。
これ自身が意味不明・・・


返信引用
suzuka
 suzuka
(@suzuka)
ゲスト
結合: 23年前
投稿: 46
 

>>float c(10);
>は配列ではなくfloat c = 10;と同値です。

ここにツッコミ入れたいんだと思いますが、
これは float クラスのコンストラクタに
引数として 10 を渡しているのと同じってことです。


返信引用
PAI
 PAI
(@PAI)
ゲスト
結合: 23年前
投稿: 359
 

>>c(i) = 0;

こっちに突っ込みを入れたいのだとするなら、
もし、プリミティブをクラスのように表記するなら、

c(i) = 0;

(c.operator()(i)).operator=(0);

だから意味不明でもないかもしれないけど、
だからといってそれを意味不明と称することも、
意味不明とまで言うことじゃないんじゃないかとは思う。

// と書いてて自分で意味不明


返信引用
るんるん
 るんるん
(@るんるん)
ゲスト
結合: 22年前
投稿: 7
 

結局はこうすればいいです。

int i;
float c[10];

for(i=0;i<10;i++) c[i]=0;


返信引用
みのすけ
 みのすけ
(@みのすけ)
ゲスト
結合: 22年前
投稿: 64
Topic starter  

初歩的な質問で済みませんでした。
お蔭様で解決しました。
有り難うございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました