は私がループの中でそれを読んでいるこのループ終了条件は
"input"
height : 227
width : 227
depth : 3
"conv"
num_output : 96
pad : 0
kernel_size : 11
stride : 4
group : 1
"relu"
"pool"
kernel_size : 3
stride : 2
のようなテキストファイルを持って動作しません(これは部分的なコードです)
char line[100];
while ((fgets(line, sizeof(line), filePtr))) {
if (line[0] != "\n") {
sscanf(line, "%15s : %15s", tmpstr1, tmpstr2);
printf("%s\n", tmpstr2);
printf("line = %s", line);
} else
break;
}
しかし、私は観察しましたif
条件が常に成り立つと私はとの比較を試みている
"input"
227
line = height : 227
227
line = width : 227
3
line = depth : 3
3
line =
3
line = "conv"
96
line = num_output : 96
0
line = pad : 0
11
line = kernel_size : 11
4
line = stride : 4
1
line = group : 1
1
line =
1
line = "relu"
1
line =
1
line = "pool"
3
line = kernel_size : 3
2
line = stride : 2
以下のように出力されていることでも結果は変わらない。私が間違っているところを私に指摘してください。
P.S. :gcc 5.2.1でUbuntu 16.04 64ビットマシンを使用しています。
'ラインを[0] = "\ n" は、' - >! 'line [0]!= '\ n'' – BLUEPIXY
' char'と文字列リテラルを比較しているので、コンパイラの警告を有効にする必要があります。 'gcc' -pedantic -Werror –
@BLUEPIXYそれを指摘してくれてありがとう。そのtypoを完全に見落としました。 –