

『ppm形式の画像の読み込み』のプログラムを実行したのですが、
エラーがでてうまくいきません。
どこを修正しなければいけないのか、教えてください。
エラーの内容↓
function 'main':
main.c:17: 警告: passing argument 1 of 'fopen' makes pointer from integer without a cast
main.c: In function 'headerScan':
main.c:35: 警告: ポインタと整数との比較を行なっています
main.c:36: 警告: ポインタと整数との比較を行なっています
main.c:37: 警告: ポインタと整数との比較を行なっています
main.c: In function 'dataScan':
main.c:44: 警告: ポインタと整数との比較を行なっています
プログラム↓
#include <stdio.h>
#include <stdlib.h>
struct image{
int type;
int width;
int height;
int depth;
char *data;
};
int main(int argc, char *argv){
FILE *fpin;
fpin = fopen("argv[1]", "rb");
struct image *img;
headerScan(fpin, img);
img->data = (char *)malloc(sizeof(char)*img->width*img->height*3);
dataScan(fpin, img);
free(img->data);
fclose(fpin);
return 0;
}
int headerScan(FILE *fp, struct image *img){
while(fscanf(fp, "P%d", &(img->type)) == NULL);
while(fscanf(fp, "%d %d", &(img->width), &(img->height)) == NULL);
while(fscanf(fp, "%d", &(img->depth)) == NULL);
return 0;
}
int dataScan(FILE *fp, struct image *img){
int i = 0;
while(fscanf(fp, "%c%c%c", &(img->data[i++]), &(img->data[i++]), &(img->data[i++])) != NULL);
return 0;
}
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>『ppm形式の画像の読み込み』のプログラムを実行したのですが、
>エラーがでてうまくいきません。
「実行」までいってない。
>どこを修正しなければいけないのか、教えてください。
エラーの内容のとおりだけど?
まず、関数のリファレンスを読み直すことと、エラーの意味を理解することから始めるべき。
>main.c:17: 警告: passing argument 1 of 'fopen' makes pointer from integer without a cast
fopen()の使い方が問題。
関数に渡す引数の内容が違う。
>main.c:35: 警告: ポインタと整数との比較を行なっています
>main.c:36: 警告: ポインタと整数との比較を行なっています
>main.c:37: 警告: ポインタと整数との比較を行なっています
>main.c:44: 警告: ポインタと整数との比較を行なっています
fscanf()の戻り値はint型。戻る値は項目数(0もありえる)かEOF。
NULL比較はできない。
>main.c: In function 'dataScan':
プロトタイプ宣言されていないから、main()より下に書かれている関数が認識されていない。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- その他(プログラミング・Web制作) pythonのグローバル変数 2 2022/11/25 18:02
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- C言語・C++・C# #include <stdio.h>int main(void) { int buf[100] = 6 2022/11/01 22:45
- JavaScript 画像の表示位置 3 2022/12/23 08:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
セグメントエラー
-
C言語のポインタに直接アドレス...
-
init関数の意味
-
Run-Time Check Failure #3とい...
-
戻り値で構造体を返すことは可...
-
ExcelVBAでのkernel32(64bit)
-
アプリを32bitから64bit移行
-
参照型で受け取った引数をポイ...
-
fopne で失敗する原因
-
PASCALとFARの意味
-
LPSTR型の初期化について
-
CWnd::EnableWindow()の扱い方
-
ポインタについて
-
プーさんのマウスポインタを教...
-
連結リスト 要素の入れ替え
-
ハンドルはポインタか
-
C++で関数ポインタから関数名を...
-
自作DLLの引数について、ポイン...
-
NULLポインタが0でない処理系と...
-
TCHAR文字列内の検索について
おすすめ情報