- ベストアンサー
C言語でpgm形式の画像を読み込みたい
タイトル通りです。読み込むプログラムが書けません。 この手の質問に対し、 http://www.mm2d.net/c/c-09.shtml を参考にする、という回答がよく見受けられますが、Picture*というふうに*が後付けされてる部分がエラーが出ます。 ヘッダ処理もして、データも読み込めるプログラムを教えていただけないでしょうか。
- pgmbgn
- お礼率9% (4/41)
- C・C++・C#
- 回答数2
- ありがとう数0
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
状況は分かりました 原因はその他の必要なところ見てないからです (ある意味人が書いたものそのままで自分で一切探そうとしてないからともいえる) http://www.mm2d.net/c/c-07.shtml ↑見て必要な部分を追加してください 少なくてもこちらの環境(VC6)ではコンパイルはできました 実際の処理があっているかまでは確認してません
その他の回答 (1)
- koi1234
- ベストアンサー率53% (1866/3459)
確認してないけど どんなエラーが出るの? pgmファイルの構造や ここで書かれてる関数自体を理解しないから エラーの内容も理解できないだけではないですか? 読むだけならファイル形式関係なく全データメモリに読むだけでも読んだことになりますよ? って冷たく書くと反応なくなるかな
補足
プログラム名:yomikomi.cでコンパイル yomikomi.c:4:8: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token yomikomi.c:19:28: error: expected ‘)’ before ‘*’ token yomikomi.c:33:8: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token でコンパイルできません。
関連するQ&A
- pgmファイルをC言語で読込、処理、出力する方法
題名の通りのプログラムを作成しています。 http://www.mm2d.net/c/c-07.shtml http://www.mm2d.net/c/c-09.shtml http://www.mm2d.net/c/c-10.shtml を参考に、コンパイルが通るプログラムは作りました。 あとは何らかの画像処理を行い、printfをどこかに埋め込んだら完成だと思うのですが、 画像処理とprintfを行う(埋め込む)場所が分かりません。 教えてください。 環境はwindowsです。UNIXじゃないのでバイナリモード(r→rb、w→wb)にしなければいけないかもです。
- ベストアンサー
- C・C++・C#
- C言語のプログラムをJavaに
C言語のプログラムをJavaのプログラムに直したいと思います。 で、どこから手を付ければよいでしょう? ヘッダファイルはどのように扱えばよいでしょうか? どうぞご教授お願いいたします
- ベストアンサー
- Java
- C言語でプロセスを処理するプログラムを考えています。
C言語でプロセスを処理するプログラムを考えています。 popenを使ってプロセスを起動しようとしたですが、popenが未定義の関数とエラーが出てコンパイルできません。 ヘッダにstdio.hはおいてあります。 コンパイラはborlandを使用しています。 よろしくお願いします。
- ベストアンサー
- C・C++・C#
- C言語でヘッダファイルを自作する
C言語で#defineを用いてヘッダファイルを作成したのですが、 作成したコンパイルするときにヘッダファイルがオープンできません。 参考にしている資料があるのですが、そこに書かれているサンプルプログラムを 丸ごとコピーして作ったプログラムも同様にヘッダファイルがオープンできない というエラーが出るので、ヘッダファイルを定義する方法そのものが間違っていると 思うのですが、どこが間違っているのでしょうか? よろしければ正しい記述方法もお教えください。 #include <stdio.h> #if !defined SAMPLE_H #define SAMPLE_H wa(int a, int b) { return a+b; } #endif #include "sample.h" int main(){ printf("%d\n",wa(40,70)); return 0; } ヘッダファイルの定義の方法は他にもあるとは思いますが、 今回は#defineを用いた方法でお願いします。
- 締切済み
- 情報工学
- C言語でヒストグラムを作成するプログラムを作りたいのですが
C言語でヒストグラムを作成するプログラムを書いたのですが、正しい濃度値が出力されずに困っています。 ヘッダなしの2バイト画像データを読み込みヒストグラムを書き出すプログラムです。 gccを使っています。 よろしくお願いします。
- 締切済み
- C・C++・C#
- C言語の練習
今C言語の勉強をしています。 参考書を見ながら、なるほどと思いながら、やっているのですが、 プログラムは参考書を見て理解するより、実際にプログラムを 作ってみたほうが理解が深まると思いました。何か練習問題のような、 参考書って売っていないのでしょうか? 大きめの本屋さんに行っても、参考書は沢山ありますが、練習問題的な 本が見つかりませんでした(行った本屋が悪かったのか)。 現役プログラマの方は、プログラムを始めたばかりの時は、 どのようにして理解を深めていきましたか? 教えて頂きたいです。よろしくお願いします。 また、僕が見に行った時は練習問題的な本がなかったのですが、 もしそういった本があるならば、タイトルなど教えていただけませんか。宜しくお願いします。
- ベストアンサー
- C・C++・C#
- C言語で2桁Hex文字列を10進数値に変換する方法
C初心者です。よろしくお願いします。 測定器からシリアルで送られてくる2桁のHexデータ(リトルエンディアン)を10進数値に変換したいのですが、ネットでいろいろ調べてもよく解りません。 ネット上にあったプログラムを参考にして、次のようにやっています。 char d[3]; //受信データ // データ受信処理後 int i=0, c=0, n; while(d[i] != '\0'){ n = n * 0x10; c = d[i++]; if((c >= '0') && (c <= '9')){ n += c - '0'; } else if((c >= 'A') && (c <= 'F')){ n += c - 'A' + 10; } } printf("%d\n",n); 結果を表示すると’0’になってしまいます。 どこがダメなのか、よろしくお願いします。
- ベストアンサー
- C・C++・C#
- C言語でプログラムを作成しなさい!といわれたんですが...
◎プログラム仕様 C言語を使用 入力ファイルから1レコードを入力する。改行マークまで入力する。 2番目の「:」以前のデータを有効とする。 2番目の「:」からは、不要です。 出力ファイルへ出力する。 この処理を最終レコードまで行う。 処理の例 yoneko:ksgtgsmbnisysbnka:sjkmakshs7s:sksksk99jjs: 入力データ yoneko:ksgtgsmbnisysbnka 出力データ 入力ファイル名・出力ファイル名は、任意に指定できるものとする。 入力ファイルの1レコード当たりの最大バイト数は、100バイトします。 それぞれの処理でエラーが発生した場合は、エラーの表示を行う。 を依頼されました。 まったく意味が分りません。 わかりやすく説明していたでけないでしょうか。 C言語、自体わかりません。
- ベストアンサー
- C・C++・C#
- C言語でのレジストリ書き換え
C言語に於いて以下のことをしようと思うのですが、知識不足故、どうもうまくいきません。 ・プログラム名 -1 とすると、とあるレジストリの値のデータを"100"にする。-2とすると"200"となる。 又、同時に、他の値のデータを"abc def 1"にする。-2とすると"abc def 2"となる。 ・プログラム名 -d とすると、上記の"abc def *"のデータを表示する。 どなたかどうすれば以上のことができるのか教えていただけないでしょうか。
- 締切済み
- C・C++・C#
補足
回答ありがとうございます。 構造体を追加し、stdlib.hをインクルードし、全部main関数の中に入れたら、gcc yomikomi.cでコンパイルは通りました。 さらに出力関数 http://www.mm2d.net/c/c-10.shtml も追加し、コンパイルは通りました。 さて、実行方法がよく分かりません。 ./a なんとか.pgm で、とりあえず配列に格納されるのでしょうか。 あとはprintfとかを追加して扱えばいいのでしょうか。 出力先も指定したいのですが・・・ ./a 入力.pgm 出力.pgm という感じ?よく分かりません。 それと、UNIX以外でバイナリモードと書いてますが、windowsなので、rをrbに、wをwbに変えるだけでいいのでしょうか。