皆様方のアドバイスにより作ることが出来たのですが、'==' : 演算子にプログラム上の
作用がありません。'=' を意図しましたか?などの警告がでてしまい、printfで見るこ
とが出来ません。
#include stdafx.h
を必要としないからのプロジェクトですと見ることが出来るのですが?
再度、皆様方のアドバイスをいただきたく思います。
お手数お掛け致しますが宜しくお願いいたします。
#include stdafx.h
#include <stdio.h>
#define NUM_DATA 150
#define MAX_NUM_INPUT 3
#define NUM_OUTPUT 1
#define DATA_FILE data.txt
double tx[200][100], ty[200][100];
double data[NUM_DATA];
int main(void)
{
FILE *fp;
int n, i, j,NUM_INPUT, NUM_HIDDEN;
double NUM_SAMPLE;
//INP
NUM_SAMPLE ==0;
for(NUM_INPUT=1; NUM_INPUT < MAX_NUM_INPUT; NUM_INPUT++){
NUM_SAMPLE == ((NUM_DATA) - (NUM_INPUT) - (NUM_OUTPUT) + 1);
if ((fp = fopen(DATA_FILE, r)) == NULL) {
fprintf(stderr, ファイル[ DATA_FILE ]をオープンできません.\n);
return 1;
}
for (n = 0; n < NUM_DATA; n++) {
fscanf(fp, %lf, &data[n]);
}
for(n = 0; n < NUM_SAMPLE; n++) {
for (i = 0; i < NUM_INPUT; i++) {
tx[n][i]= data[n+i];
printf(%lf , tx[n][i]);
}
for (j = 0; j < NUM_OUTPUT; j++) {
ty[n][j]=data[n+i+j];
printf( %lf\n, ty[n][j]);
}
}
fclose(fp);
}
}//main
現在data.txtには1 2 3 4 ・・・150が一行に並んでいます。
printfで出力したいです。
宜しくお願いします。
>NUM_SAMPLE ==0;
~~~
>for(NUM_INPUT=1; NUM_INPUT < MAX_NUM_INPUT; NUM_INPUT++){
> NUM_SAMPLE == ((NUM_DATA) - (NUM_INPUT) - (NUM_OUTPUT) + 1);
~~~
エラーメッセージの通りです。
質問する前に、よく見直しましょう。
ついでに言うと変数を大文字で書くのは、
一般的ではないので気をつけましょう。
すいません。
原因が分かりました。
エラーメッセージを見たいのですが、どうしたらよいのですか?
コンパイルしてください。 error/warningが出力されます。
この場合、文法的には正しいので、errorではなくwarningですが。
# ってゆーか、見たんでしょ?
すいません。
error/warningは確認できるのですが、以下のような表記としては確認できません。
これはどのようにしたら良いのですか?
>NUM_SAMPLE ==0;
~~~
>for(NUM_INPUT=1; NUM_INPUT < MAX_NUM_INPUT; NUM_INPUT++){
> NUM_SAMPLE == ((NUM_DATA) - (NUM_INPUT) - (NUM_OUTPUT) + 1);
~~~
> '==' : 演算子にプログラム上の作用がありません。'=' を意図しましたか?
というメッセージから 'あなた'が判断するのです。
>NUM_SAMPLE ==0;
この命令で何をしようとしてますか?
NUM_SAMPLEに0を代入するつもりなら
'=='ではなくて'='を使います。
この説明の意味がわからなければ、再度C言語の学習を
する必要があります。
代入演算子と関係演算子の使い分けがきちんとできていますか?
ってことですね。
なるほど!
理解できました。有難うございました。
解決です。