- 1 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 06:24:18 ]
- C言語の入門者向け解説スレです。
・C++言語はスレ違いです。 ・分からない事をなるべく詳しく書いて下さい。 ・ソースコードを晒すと答えやすくなるかもしれません。 ・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 前スレ C言語なら俺に聞け(入門篇) Part 20 pc11.2ch.net/test/read.cgi/tech/1192455273/ 教えて欲しいのではなく丸投げしたいならこちらへ C/C++の宿題を片付けます 99代目 pc11.2ch.net/test/read.cgi/tech/1194262698/
- 795 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 00:32:19 ]
- つまり
float *tempは、ポインタとして宣言してる状態で、そこにaのアドレスが入って、 temp = a となっている、ということですか?上の例だと で、3行目の *a =120 は aのアドレスをもったところに120をぶち込んでる、ということで float *tempとは別ものなんですよね?
- 796 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 00:47:27 ]
- 564.1
451.6 154.1 [EOF] こういう風になってるテキストファイルがあるときに 「EOFまで数字をテキストファイルから読み込む」という作業をする場合はどうすればいいんでしょうか? i=0; while(1){ if(fread(&c,sizeof(char),1,fp)==EOF) break; else { data[i]=fscanf(fp,"%lf\n",&value); i++; } } こんな感じにかいたらdata[0][1][2]には564.1 451.6 154.1 が入っているんでしょうか? よくfreadとfscanfなどがわかっていないのでよろしくお願いします。
- 797 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 00:47:38 ]
- 別もの。
*a=120の*はデリファレンス、float *tempの*はポインタ宣言。
- 798 名前:ワカメ高専 mailto:sage [2007/11/27(火) 01:05:59 ]
- [-3,3] fx=1/(1+5x^2) 分点の数 10個(n=9)
これをラグランジュで求めて結果を出力するプログラムを作れって(c or c++)言われたけどさっぱりでしゅ
- 799 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 01:44:24 ]
- >>798
課題丸投げは宿題スレへ pc11.2ch.net/test/read.cgi/tech/1195668114/
- 800 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 01:49:31 ]
- >>796
i=0; while(1){ if (fscanf(fp, "%lf", &data[i]) == EOF) { break; } i++; }
- 801 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 01:55:32 ]
- >>795
そう。上の例は float *a; a = new float(); *a = 120; float *temp; temp = a; に等しい。下の例は float *temp; temp = 120; ということになる。floatポインタに整数120は代入できない(型が異なる)のでエラー。
- 802 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 02:14:26 ]
- エラーにはならないだろボケ
- 803 名前:デフォルトの名無しさん mailto:sage [2007/11/27(火) 02:16:13 ]
- >>791
別に駄目じゃねーよ。 期待してるのとは違う動作だろうけどな。
- 804 名前:801 mailto:sage [2007/11/27(火) 02:19:44 ]
- 本当だ、エラーにはならんね、すまそ
|

|