hidebun の回答履歴
- 基本情報 平成19年 秋 午後 問10
a,e,fとiの値がちがいまちがっていました。 eの問題ですと i=0の時 80>25で成立 i=1の時 80>60で成立 i=2の時 80>100で不成立 i=1の時 *price=Price_tbl[1]が答えになると思っています。 正解はi=2の時になっています。何故でしょうか?。forループが理解できていないでしょうか?。 forループの右端のiを増やしていくi++は*priceの値を計算した後にiを加算すると思っています。これが間違っているんでしょうか?。
- c言語の初期化について
#define TMAX 100 int a[TMAX]; static int b[TMAX]; void main() { int c[TMAX]; static int d[TMAX]; } 上記、a,b,c,dの配列の要素において、未初期化の状態で0が保証される物はありますか? また、宣言時に初期化 (a[TMAX]={0,0,0・・・0}) をする場合、0を100個書かなければなりません。 また、TMAXの値が変わるたびに書き換えなくてはなりません。 TMAX分、全て同じ値で初期化してくれる、便利な記述方法などありませんでしょうか? よろしくお願いします。
- マルチスレッドでブレイクポイントするとフリーズする
C++/CLI .Net2008 windowsフォームアプリケーション 二つのスレッドが同時に動いているマルチスレッドプログラムを作成しています。 デバッグでブレイクポイントを張って途中で止めたいのですが、止めてすぐもしくはF10で2,3行進めるとフリーズしてアプリが動かなくなってしまいます。他のoutlook等も動かせず、タスクマネージャも開かないため、画面下のウィンドウを右クリック、閉じるを5~10分くらいかけて行って終了させています。たまにVisualStudio自体もフリーズして落ちることがあります。 ブレイクポイントで止めなければフリーズはしません。 プログラムの構成としては、 片方は外部装置からリアルタイムでデータを受信し、判別した結果を出力するスレッドと、その判別結果を元に状態を遷移させるスレッドです。 また、状態によってはタイマーを設けている箇所があり、タイマー処理もスレッドで行っています。 ブレイク張らずに実行した時におかしい動作をしている箇所があるので1行ずつ見たいのですが、マルチスレッド環境ではフリーズするものなのでしょうか?
- ベストアンサー
- C・C++・C#
- doseisan77
- 回答数2
- OpenCVでのavi動画ファイルの指定
現在Visual Studio 2005とOpenCVを用いて、avi動画を表示させようとしているのですが、ファイルを指定しても無いものと判断され出力できない状況です。同じような質問があったのですが、結局コマンドプロンプトの移動というのがよくわからなかったため分かる方がいたら教えていただきたいです。 avi動画ファイルはC:\\Documents and Settings\\user\\デスクトップ\\a.aviにあり、以下のプロジェクトファイルはC:\Documents and Settings\user\My Documents\Visual Studio 2005\Projects\cv\cvにあります。 //--------------------------------------------------------- // 概要 : 動画(aviファイル)読み込み // File Name : LoadVideo.cpp // Library : OpenCV for MS-Windows beta5 // Auther : Yasuhiro Yoshimura // Date : Dec 26, 2005; 22:22 //--------------------------------------------------------- #include "cv.h" #include "cxcore.h" #include "highgui.h" #include <stdio.h> //読み込む動画ファイル名 char* filename="C:\\Documents and Settings\\user\\デスクトップ\\a.avi"; //IplImage IplImage* src; int main(){ CvCapture* capture = NULL; int key; //キー入力 //指定したAVIファイルが見つからない場合 if(NULL==(capture = cvCaptureFromAVI(filename))){ fprintf(stderr,"指定のaviファイルが見つかりませんでした."); return -1; } //画像表示ウィンドウの準備 cvNamedWindow("Source Image", CV_WINDOW_AUTOSIZE); //画像表示ウィンドウの出現位置指定 cvMoveWindow("Source Image", 50, 50); //処理ループの開始 for(;;){ //AVIファイルからフレーム画像を取り出す if(NULL==(src=cvQueryFrame(capture))){ break; } //画像表示 cvShowImage("Source Image", src); //キー入力 key = cvWaitKey(10); //ESCキーを押すと終了 if(key==0x1b) break; } //解放 cvReleaseCapture(&capture); cvDestroyWindow("Source Image"); return 0; } よろしくお願いします。
- OpenCVでのavi動画ファイルの指定
現在Visual Studio 2005とOpenCVを用いて、avi動画を表示させようとしているのですが、ファイルを指定しても無いものと判断され出力できない状況です。同じような質問があったのですが、結局コマンドプロンプトの移動というのがよくわからなかったため分かる方がいたら教えていただきたいです。 avi動画ファイルはC:\\Documents and Settings\\user\\デスクトップ\\a.aviにあり、以下のプロジェクトファイルはC:\Documents and Settings\user\My Documents\Visual Studio 2005\Projects\cv\cvにあります。 //--------------------------------------------------------- // 概要 : 動画(aviファイル)読み込み // File Name : LoadVideo.cpp // Library : OpenCV for MS-Windows beta5 // Auther : Yasuhiro Yoshimura // Date : Dec 26, 2005; 22:22 //--------------------------------------------------------- #include "cv.h" #include "cxcore.h" #include "highgui.h" #include <stdio.h> //読み込む動画ファイル名 char* filename="C:\\Documents and Settings\\user\\デスクトップ\\a.avi"; //IplImage IplImage* src; int main(){ CvCapture* capture = NULL; int key; //キー入力 //指定したAVIファイルが見つからない場合 if(NULL==(capture = cvCaptureFromAVI(filename))){ fprintf(stderr,"指定のaviファイルが見つかりませんでした."); return -1; } //画像表示ウィンドウの準備 cvNamedWindow("Source Image", CV_WINDOW_AUTOSIZE); //画像表示ウィンドウの出現位置指定 cvMoveWindow("Source Image", 50, 50); //処理ループの開始 for(;;){ //AVIファイルからフレーム画像を取り出す if(NULL==(src=cvQueryFrame(capture))){ break; } //画像表示 cvShowImage("Source Image", src); //キー入力 key = cvWaitKey(10); //ESCキーを押すと終了 if(key==0x1b) break; } //解放 cvReleaseCapture(&capture); cvDestroyWindow("Source Image"); return 0; } よろしくお願いします。
- OpenCVでのavi動画ファイルの指定
現在Visual Studio 2005とOpenCVを用いて、avi動画を表示させようとしているのですが、ファイルを指定しても無いものと判断され出力できない状況です。同じような質問があったのですが、結局コマンドプロンプトの移動というのがよくわからなかったため分かる方がいたら教えていただきたいです。 avi動画ファイルはC:\\Documents and Settings\\user\\デスクトップ\\a.aviにあり、以下のプロジェクトファイルはC:\Documents and Settings\user\My Documents\Visual Studio 2005\Projects\cv\cvにあります。 //--------------------------------------------------------- // 概要 : 動画(aviファイル)読み込み // File Name : LoadVideo.cpp // Library : OpenCV for MS-Windows beta5 // Auther : Yasuhiro Yoshimura // Date : Dec 26, 2005; 22:22 //--------------------------------------------------------- #include "cv.h" #include "cxcore.h" #include "highgui.h" #include <stdio.h> //読み込む動画ファイル名 char* filename="C:\\Documents and Settings\\user\\デスクトップ\\a.avi"; //IplImage IplImage* src; int main(){ CvCapture* capture = NULL; int key; //キー入力 //指定したAVIファイルが見つからない場合 if(NULL==(capture = cvCaptureFromAVI(filename))){ fprintf(stderr,"指定のaviファイルが見つかりませんでした."); return -1; } //画像表示ウィンドウの準備 cvNamedWindow("Source Image", CV_WINDOW_AUTOSIZE); //画像表示ウィンドウの出現位置指定 cvMoveWindow("Source Image", 50, 50); //処理ループの開始 for(;;){ //AVIファイルからフレーム画像を取り出す if(NULL==(src=cvQueryFrame(capture))){ break; } //画像表示 cvShowImage("Source Image", src); //キー入力 key = cvWaitKey(10); //ESCキーを押すと終了 if(key==0x1b) break; } //解放 cvReleaseCapture(&capture); cvDestroyWindow("Source Image"); return 0; } よろしくお願いします。
- C++を用いてExcelにエクポートする方法を教えてください
大学の研究でC++を用いてYahoo!ファイナンスというWebページの時系列データをExcelにエキスポートして保存したいのですが、方法が分かりません。 分かる方がいらっしゃったら教えてください。 使用OS :Windows XP 使用ソフト :Microsoft Visual C++ 6.0
- USBメモリが接続されているか確認するには
環境 .Net2008 C++/CLI Windowsフォームアプリケーション .NetFrameWorkは2.0で作成してます。 アプリケーションの起動時にUSBメモリがささっているか確認し、 刺さっていればアプリは続行しUSBメモリ内のCSVファイルを読み込む処理を作ろうとしているのですが、 ネットで検索してもファイルやディレクトリばかりでドライブの検索方法が見つかりませんでした。 USBはさすたびにドライブ名が変わるのでファイルパスを固定にしてファイルオープンするわけにもいかず悩んでいます。 また、 ファイル構成がまったく同じUSBが複数刺さってたらどれを読むのか?という問題があるのですがこちらもどなたかご存知の方いましたら教えてください。よろしくお願い致します。
- ベストアンサー
- C・C++・C#
- doseisan77
- 回答数2
- 3次元配列から2次元配列に
3次元配列のデータを2次元配列に移すにはどのように したらよいのでしょうか.とりあえず下記のように考えてみましたが. data3[500][500][4000]; //3次元配列 data2[500][500]; //2次元配列 for(y=0; y<500; y++) for(x=0; x<500; x++){ for(z=0; z<4000; z++){ data2[y][x] = data3[y][x][z]; } } } これでいいのでしょうか?
- 3次元配列から2次元配列に
3次元配列のデータを2次元配列に移すにはどのように したらよいのでしょうか.とりあえず下記のように考えてみましたが. data3[500][500][4000]; //3次元配列 data2[500][500]; //2次元配列 for(y=0; y<500; y++) for(x=0; x<500; x++){ for(z=0; z<4000; z++){ data2[y][x] = data3[y][x][z]; } } } これでいいのでしょうか?
- 3次元配列から2次元配列に
3次元配列のデータを2次元配列に移すにはどのように したらよいのでしょうか.とりあえず下記のように考えてみましたが. data3[500][500][4000]; //3次元配列 data2[500][500]; //2次元配列 for(y=0; y<500; y++) for(x=0; x<500; x++){ for(z=0; z<4000; z++){ data2[y][x] = data3[y][x][z]; } } } これでいいのでしょうか?
- gccでc++プログラムをコンパイルできない
gccをインストールして使ってみたのですがc++のプログラムをコンパイルすることができません。 gcc test.ccとすると gcc: error trying to exec 'cc1plus': execvp: そのようなファイルやディレクトリはありません というエラーがでます。 ネットで調べたところg++かc++のようにコンパイルすればいいということでしたが、g++やc++とうつとcommand not found とでます。 gcc -versionで調べたところgccのバージョンは gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8) です。 環境はfedora9です。fedora9をインストールしたときにgccがインストールされていなかったので yum install gcc でインストールしたのですが、これがまずかったのでしょうか? 分かっている方からするとトンチンカンな質問かもしれないのですが、どなたかよろしくお願いします。
- ディアルコアPCにおけるCPU固定について
スレッドを作成せずに、プログラム中で SetThreadAffinityMask(GetCurrentThread(),1); としてある処理1を行い、その後処理2の前に SetThreadAffinityMask(GetCurrentThread(),2); とした場合は、 処理1は1のプロセッサで行われ、 処理2以降の処理は2のプロセッサで行われるのでしょうか? 例えば SetThreadAffinityMask(GetCurrentThread(),1); ts1 = RDTSC(); //処理1 SetThreadAffinityMask(GetCurrentThread(),2); if (sendto(sock, psp, sizeof(s_packet), 0, (struct sockaddr *) &ClientAddr, sizeof(ClientAddr)) != sizeof(s_packet)) error_msg("sendto() sent a different number of bytes than expected");//処理2
- 締切済み
- C・C++・C#
- tsutti0126
- 回答数1
- 受信したデータを出力したいのですが
私は現在、GPSから受信したデータをRS232Cで接続したPCに表示させるプログラムを作成していたのですが、解決できないことがあり困っています。参考になる資料やHPをご存知な方がいらっしゃいましたらアドバイスをください。よろしくお願いします。 開発環境はUNIX C言語、GPSはGARMIN社 geko201(ハンディGPS)を使用し、RS232CでPCに接続して受信したNMEAセンテンス(ボーレート:4800)を表示したいのですが、 $GPGGA,0933……といったNMEAセンテンスではなく 2c8080803030301………といったデータが表示されてしまいます。 ポートの設定は以下で行っています。 newtio.c_cflag = B4800 | CS8 | CREAD | CLOCAL; newtio.c_iflag = 0; newtio.c_oflag = 0; newtio.c_lflag = 0; newtio.c_cc[VTIME]=1; RS232Cからデータを得て表示する部分のアルゴリズムで参考になるものがございましたらどうかご教授ください。
- 受信したデータを出力したいのですが
私は現在、GPSから受信したデータをRS232Cで接続したPCに表示させるプログラムを作成していたのですが、解決できないことがあり困っています。参考になる資料やHPをご存知な方がいらっしゃいましたらアドバイスをください。よろしくお願いします。 開発環境はUNIX C言語、GPSはGARMIN社 geko201(ハンディGPS)を使用し、RS232CでPCに接続して受信したNMEAセンテンス(ボーレート:4800)を表示したいのですが、 $GPGGA,0933……といったNMEAセンテンスではなく 2c8080803030301………といったデータが表示されてしまいます。 ポートの設定は以下で行っています。 newtio.c_cflag = B4800 | CS8 | CREAD | CLOCAL; newtio.c_iflag = 0; newtio.c_oflag = 0; newtio.c_lflag = 0; newtio.c_cc[VTIME]=1; RS232Cからデータを得て表示する部分のアルゴリズムで参考になるものがございましたらどうかご教授ください。
- 受信したデータを出力したいのですが
私は現在、GPSから受信したデータをRS232Cで接続したPCに表示させるプログラムを作成していたのですが、解決できないことがあり困っています。参考になる資料やHPをご存知な方がいらっしゃいましたらアドバイスをください。よろしくお願いします。 開発環境はUNIX C言語、GPSはGARMIN社 geko201(ハンディGPS)を使用し、RS232CでPCに接続して受信したNMEAセンテンス(ボーレート:4800)を表示したいのですが、 $GPGGA,0933……といったNMEAセンテンスではなく 2c8080803030301………といったデータが表示されてしまいます。 ポートの設定は以下で行っています。 newtio.c_cflag = B4800 | CS8 | CREAD | CLOCAL; newtio.c_iflag = 0; newtio.c_oflag = 0; newtio.c_lflag = 0; newtio.c_cc[VTIME]=1; RS232Cからデータを得て表示する部分のアルゴリズムで参考になるものがございましたらどうかご教授ください。
- 受信したデータを出力したいのですが
私は現在、GPSから受信したデータをRS232Cで接続したPCに表示させるプログラムを作成していたのですが、解決できないことがあり困っています。参考になる資料やHPをご存知な方がいらっしゃいましたらアドバイスをください。よろしくお願いします。 開発環境はUNIX C言語、GPSはGARMIN社 geko201(ハンディGPS)を使用し、RS232CでPCに接続して受信したNMEAセンテンス(ボーレート:4800)を表示したいのですが、 $GPGGA,0933……といったNMEAセンテンスではなく 2c8080803030301………といったデータが表示されてしまいます。 ポートの設定は以下で行っています。 newtio.c_cflag = B4800 | CS8 | CREAD | CLOCAL; newtio.c_iflag = 0; newtio.c_oflag = 0; newtio.c_lflag = 0; newtio.c_cc[VTIME]=1; RS232Cからデータを得て表示する部分のアルゴリズムで参考になるものがございましたらどうかご教授ください。
- mciSendStringによるmpegファイルの再生
現在mciSendStringを使って簡単な動画再生プログラムを作成しています。 .aviの再生まではできたものの、ファイルの拡張子が.mpegとか.mpgとかである MPEGファイルの再生を使用とすると途端に実行時エラーでロードに失敗してしまいます。 ソースコードと実行時のファイルと使用した動画はこちらです。 http://fatalita.sakura.ne.jp/OKWave/mpegMCI.zip もし宜しければどこが悪かったのか教えていただけると幸いです。 後、作業環境は以下の通りです。 環境:Visual Studio 2005, WinXP
- ベストアンサー
- C・C++・C#
- noname#88356
- 回答数2
- mciSendStringによるmpegファイルの再生
現在mciSendStringを使って簡単な動画再生プログラムを作成しています。 .aviの再生まではできたものの、ファイルの拡張子が.mpegとか.mpgとかである MPEGファイルの再生を使用とすると途端に実行時エラーでロードに失敗してしまいます。 ソースコードと実行時のファイルと使用した動画はこちらです。 http://fatalita.sakura.ne.jp/OKWave/mpegMCI.zip もし宜しければどこが悪かったのか教えていただけると幸いです。 後、作業環境は以下の通りです。 環境:Visual Studio 2005, WinXP
- ベストアンサー
- C・C++・C#
- noname#88356
- 回答数2
- 【C言語】ファイルでのソート方法について
ファイルの大量データ(構造体をバイナリで書き込んだ)をソートする時(構造体のメンバの1つをキーとして)に用いるソート法で高速にできるソート法はなんでしょうか? 選択法でやっているのですが遅いもので・・・・ 配列ではなくてファイルに対して高速なソート法をご教示いただきたく。 ファイル全てを読んでからソートしないと厳しいでしょうか? まだまだc言語初心者ですが、なにかアドバイスをよろしくお願い致します。