トップページ⇒tech
1001コメント324KB

★初心者にVisual C++を教えるスレ★ Part14

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
Visual C++入門者・初心者からの質問を、
お兄ちゃん達が優しく、時には厳しく回答してくれるスレッドです。

■質問するにあたって
・エラーや警告のときはエラーメッセージを書きましょう。
・開発環境も書きましょう。
・できるだけ具体的に。

  質問の仕方については次のページが大変参考になります。
  http://www.hyuki.com/writing/techask.html
  http://www.geocities.co.jp/Beautycare/4965/public/template.html

■回答するにあたって
・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。
 (MSDNのどの項目だとか、何のキーワードでGoogleするとか)
・ネタや煽りは軽く流しましょう。

前スレ
★初心者にVisual C++を教えるスレ★ Part13
http://pc5.2ch.net/test/read.cgi/tech/1089011118/l50
0685デフォルトの名無しさんNGNG
>>684
+thisとすれば一般的な言葉も検索できますよ。
0686デフォルトの名無しさんNGNG
>>685
おお、本当だ!!ありがとうございました。
0687デフォルトの名無しさんNGNG
あほ?構造体ポインタ変数宣言してないだけだろ
0688デフォルトの名無しさんNGNG
構造体ポインタ変数宣言…?
参考にしたソースには書かれていなかったのですが、どのように宣言すればいいのでしょうか?
0689デフォルトの名無しさんNGNG
>>688
相手がわからないと思って適当な事言ってるだけだから気にしちゃだめだよ。
0690デフォルトの名無しさんNGNG
>>684
そのままコピペでもしたからだろ?
そのTipsはクラスのメンバ関数として作られることを前提にしてるから、
グローバル関数にしても使えない。
どこかのクラスに入れるか、this->を消せばOK
0691デフォルトの名無しさんNGNG
>>658
詳しく説明して下さい
0692デフォルトの名無しさんNGNG
おお、+つけりゃストップ語も検索できるのか。
実はCOMが検索できんで困ってたんだ。トンクス
0693616NGNG
HBITMAPのことを質問した者ですが、みなさんありがとうございました。
>>632さんの仰る通りパス間違ってました。CreateFile関数の
場合、パスが厳しくチェックされるみたいですね。あと
戻り値がINVALID_HANDLE_VALUEというのも参考になりました。

SetPixel関数を使えばしっかり任意の色に塗られるのに
バイト単位で書き込む(pPixel[0]=0xffみたいに)と白の斜線に
なってしまうという疑問が出たのですが、ここはSetPixelでごまかしときます。。。
ともあれ、解決できたんで、ありがとうございました。
0694デフォルトの名無しさんNGNG
>>689
(゚д゚)ノ ハイ
>>690
なるほど。一箇所でしか使わないしわざわざクラスにする必要もないかなーと思って作らなかったのです。
消したらうまくいきました。ありがとうございました。
0695695NGNG
DualCPUをフル稼働させてプログラムを走らせたいのですが・・
#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <winbase.h>
/**************/
/* メイン関数 */
/**************/
void main()
{
clock_t start, end;
start = clock();
void * hProcess;
int fRet;

hProcess=GetCurrentProcess();
fRet=GetProcessAffinityMask(hProcess,&dwProcessAffinityMask,&dwSystemAffinityMask);
fRet=SetProcessAffinityMask(hProcess,dwProcessAffinityMask);
//SetProcessAffinityMask(hProcess,4);

for(;;){
printf("表示\n");
}

end = clock();
printf("処理時間: %f秒\n", (double)(end - start) / CLOCKS_PER_SEC);
}

と参考書通りに書くと,dwProcessAffinityMask,dwSystemAffinityMaskが定義されていません。
とエラーがでます。何度かエラー解除を試みているのですが,エラーが消えません。
目的はDualCPUのフル稼働です。並列処理ではありません。誰か教えてください。
0696デフォルトの名無しさんNGNG
その参考書無茶苦茶だな
0697デフォルトの名無しさんNGNG
winapp error LNK2019: 未解決の外部シンボル _main が関数 _mainCRTStartup で参照されました。
winapp fatal error LNK1120: 外部参照 1 が未解決です。

というエラーがでます。どうしてですか?
0698デフォルトの名無しさんNGNG
>>697
コンソールプログラムを作るための設定になっているから。
0699デフォルトの名無しさんNGNG
アフィニティーマスクって数字を指定しないと駄目では?
CPU1なら0
CPU2なら1
だったかな?
0700デフォルトの名無しさんNGNG
有難うございます。そこで、win アプリケーションでしたところ、ビルドは
できたのですがデバッグで、このようにでました。
'WinApp.exe': 'C:\WINNT\system32\NTDLL.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\KERNEL32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\USER32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\GDI32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\imm32.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\ADVAPI32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\rpcrt4.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
プログラム '[1760] WinApp.exe: ネイティブ' はコード 87 (0x57) で終了しました。

これはなんですか?
0701デフォルトの名無しさんNGNG
リンクするライブラリが違う悪寒
0702デフォルトの名無しさんNGNG
>'WinApp.exe': 'C:\WINNT\system32\rpcrt4.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
このような内容の行は無視しても大丈夫

ついで言うと >>697
よく分からなかったらエラー番号の上にカーソル持っていって F1 キー
0703デフォルトの名無しさんNGNG
>>697
http://pc5.2ch.net/test/read.cgi/tech/1094494997/727
0704デフォルトの名無しさんNGNG
'WinApp.exe': 'C:\WINNT\system32\NTDLL.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\KERNEL32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\USER32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\GDI32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\imm32.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\ADVAPI32.DLL' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
'WinApp.exe': 'C:\WINNT\system32\rpcrt4.dll' を読み込みました。必要な DBG ファイルが見つからないか、開けません。
プログラム '[1760] WinApp.exe: ネイティブ' はコード 87 (0x57) で終了しました。

と表示されます。どうしてですか?
0705デフォルトの名無しさんNGNG
>>695

マルチスレッドプログラミング相談室 その2
ttp://pc5.2ch.net/test/read.cgi/tech/1037636153/
0706デフォルトの名無しさんNGNG
コンパイルのオプション全部書け
0707デフォルトの名無しさんNGNG
マルチうぜぇ。
相手にする香具師もうぜぇ。
0708デフォルトの名無しさんNGNG
お前が一番ウザイ↑
0709デフォルトの名無しさんNGNG
704ですが、わかりません。教えてください。
0710デフォルトの名無しさんNGNG
ageんな
0711デフォルトの名無しさんNGNG
>>709
いい加減にしろ。向こうのスレでも答えてもらってんだろ。
0712695NGNG
695です。
#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <winbase.h>
/**************/
/* メイン関数 */
/**************/
void main()
{
HANDLE hProcess;
int fRet;
DWORD dwProcessAffinityMask,dwSystemAffinityMask;

hProcess=GetCurrentProcess();
fRet=GetProcessAffinityMask(hProcess,&dwProcessAffinityMask,&dwSystemAffinityMask);
fRet=SetProcessAffinityMask(hProcess,1);

for(;;){
printf("表示\n");
}
}
と書き直したらエラーは消えるのですが,CPUは以前と1/4しか使っていません。
どうすればCPUをフル稼働させることができますか?教えてください。
0713デフォルトの名無しさんNGNG
ぎゃはははは
0714デフォルトの名無しさんNGNG
15秒間フル稼働のプログラム↓

#include <stdio.h>
#include <windows.h>
#include <process.h>
#include <stdlib.h>
#include <time.h>

static
void task(void* id){
SetThreadAffinityMask(GetCurrentThread(),1UL<<atoi((char*)id));
clock_t start=clock();
printf("タスク%sの開始\n",id);
while(clock()-start<15*CLOCKS_PER_SEC){
//何か
}
printf("タスク%sの終了\n",id);
}

main(){
HANDLE t1=(HANDLE)_beginthread(task,0,"1");
task("0");
WaitForSingleObject(t1,INFINITE);
return 0;
}
0715デフォルトの名無しさんNGNG
( ´,_ゝ`)プッ
0716695NGNG
ありがとうございます。
試してみたいと思います。
0717デフォルトの名無しさんNGNG
VC++6.0でツールボックス(?)ボタンとかテキストとか貼りつけるやつ
が出てこなくなりました。どうしたら表示できますか?
かれこれ1時間近く探してます・・。・゚・(ノД`)・゚・。
0718デフォルトの名無しさんNGNG
あった━━━━(Д゚(○=(゚∀゚)=○)Д゚)━━━━━!!
0719デフォルトの名無しさんNGNG
左側にツリービューコントロールがあり、ツリーから選んだ項目が右側に出る
という設定ダイアログを最近よく見かけるようになりました。(WinAMPやOpenJane等で使われている)
こういうダイアログは自作なのでしょうか?
0720デフォルトの名無しさんNGNG
そりゃあ、勝手には出来ないわな
0721デフォルトの名無しさんNGNG
>>720
いやそういう意味ではなく
ツリービューを配置したダイアログを作成して、ツリー項目が選択されたら子ダイアログを右側に表示
とかそういうコードをシコシコ書いているのか、
SHBrowseForFolderみたいに一発で表示できるとか、
MFC等のライブラリにそういうものがあるのかな、と。
0722デフォルトの名無しさんNGNG
最近でもないけどね。netscapeではずっと前からそういう設定ダイアログに
なっている。
>ツリービューを配置したダイアログを作成して、ツリー項目が選択されたら子ダイアログを右側に表示
とかそういうコードをシコシコ書いている

たぶんそうでしょう。これ自体は数行で書けるから技術的な問題は
ほとんど無いかと。
0723デフォルトの名無しさんNGNG
>>719
OpenJaneは確かデルファイでオープンソースでは?

winampのリソース見てみたけど、右側のダイアログはこんな感じ。
(左側は実際のWinampの設定画面)
http://v.isp.2ch.net/up/3c1e4e393976.png
0724デフォルトの名無しさんNGNG
>>721
明らかに見た目も機能も(右クリックへの対応など)ばらばらなのに同じAPIで実現されてるわけ無いだろ。
0725デフォルトの名無しさんNGNG
よく、ちょっと変わったListViewのアプリケーション見かけますよね?
あれって、
CListCtrlから派生クラスを作成(例えばCListCtrlEx)するんですよね?
そのCListCtrlExをViewに選択するときってどうするんですか?
プロジェクト作成時のViewはCViewでも良いのでしょうか?
0726デフォルトの名無しさんNGNG
>>721
漢なら自作するに決まってるだろ。
コモンダイアログすら使うことは許さん。全て自前で書け。
0727デフォルトの名無しさんNGNG
>>726
みたいなバカはシカトでOKだよ
そのCListCtrlExクラスのインスタンスを作成してCreateを呼べばCViewに表示されるよ
0728デフォルトの名無しさんNGNG
なんでVC++なの?
BCBじゃだめ?
0729デフォルトの名無しさんNGNG
そんなしけた燃料投下でこの俺様が釣られるかクマー
0730デフォルトの名無しさんNGNG
すんません、糞な質問で申し訳ないのですが
リソースエディタでは256色までのBitMapファイルしか
取り込めないのでしょうか?
クライアントに32Bitや16BitのBMP画像を表示するには
どうすればいいのでしょうか・・・。
CHtmlViewを描画の基本クラスにすれば
画像ファイルを指定して読み込んで表示できるようですが、
CViewを使ってやるにはどうすればよいのでしょう。
ほんとアホな質問で申し訳ありません。
環境はWindowsXP:Home,VisualC++6.0です。
0731デフォルトの名無しさんNGNG
>>730
アホな質問はよそでしてください。
0732デフォルトの名無しさんNGNG
エクセルみたいな表型式にしたいんだけど、
グリッドコントロールみたいのないの?
VC.NET(アンマネージ)
0733デフォルトの名無しさんNGNG
あるよ
0734半日潰れたNGNG
MFCでstrncpy使うと、debugビルド時に'\0'を
勝手に付加してコピーしてくるんですけど・・・
なんなの?
0735デフォルトの名無しさんNGNG
デバックビルドだと配列が0クリアされるからじゃねーの。
0736734NGNG
>>735
すまん・・・
その通りでした。orz
軽く聞き流してやって下さい・・・
0737デフォルトの名無しさんNGNG
【無料】Visual Studio 2005 Express【Beta】
http://pc5.2ch.net/test/read.cgi/tech/1091543344/269
から移動してきました。

2003 向けのプロジェクトを読み込んで、makefile を作るにはどうしたらいいですか?
それを使って、Visual C++ Toolkit 2003 でビルドしたいんです。
0738デフォルトの名無しさんNGNG
無理
0739デフォルトの名無しさんNGNG
VC6+MFCです。
ドキュメントクラスで、ワーカースレッド立ち上げて、
そこから、Viewクラスに情報を渡したいんですが、
こういう場合、一般的にはどうするのでしょうか?

グローバルでやりとりもスムーズも余りきれいにはいかないですし、
Documentクラスのポインタをワーカースレッドに渡して仲介すべきなのか、
Viewのポインタを渡した方がいいのか、、、スマートな方法を教えてください。
よろしくおねがいします。
0740デフォルトの名無しさんNGNG
UpdateAllViews
GetDocument
0741739NGNG
レスどうもです。
すみません、UpdateAllViewsだと、Viewのイベントになりますよね。

補足ですみません、しばらく考えましたが、
ワーカースレッドから、Documentにメッセージを送れるとよさそうです。
SendMessageでいけるかと思ったのですが、ハンドルがもちろん無いので駄目でした。

ワーカースレッドから、Documentにメッセージを送る方法はあるでしょうか?
0742デフォルトの名無しさんNGNG
Documentクラスになんかメンバ関数を作ってその中に必要な処理を書く
Documentクラスのポインタをワーカースレッドに渡して仲介
スレッドの中からそのポインタで上のメンバ関数を実行
0743739NGNG
なるほど、そうですね。
明解、ありがとうございます。
そうすると、ワーカースレッドがDocumentの型を意識する事になるので、
ちょっと躊躇していましたが、仕方なさそうですね。
ありがとうございます。
0744デフォルトの名無しさんNGNG
>>743
そもそもドキュメントに対してなんらかの処理をするワーカスレッドが
ドキュメントの型に依存してないわけが無いのではなかろうか・・・。
0745デフォルトの名無しさんNGNG
ビットマップファイルをリソースに追加できません。

マイピクチャフォルダに入っているビットマップは、リソースに追加可能なのですが、
このフォルダ以外の場所においてあるビットマップはリソースに追加できません。

やったことは
リソースビューの .rc を右クリック → リソースの追加 → Bitmapを選択してインポート
→ ビットマップファイルを選択 → 開く

これで、なぜかマイピクチャに入っているものは追加可能でしたが、それ以外のフォルダや
マイピクチャ下に作ったフォルダの中に保存していたビットマップは開くボタンを押してもリソースビューに追加されませんでした

追加したいファイルのあるフォルダはどこかに事前に登録しておく必要とかあるのでしょうか?
それとも、ビットマップを追加するとき制約でもあるのでしょうか?

解決方法を教えてくださいm(_ _)m

Visual C++ .NET 2003
Windows XP home SP2
0746デフォルトの名無しさんNGNG
>>745
ソース階下のRESフォルダに入れてみては?
あと、ファイル名が全角とか。
0747745NGNG
>>746
レスありがとうございます。

それもやってみたのですが、だめでした。

ファイル名はすべて半角英文字です。
0748デフォルトの名無しさんNGNG
スレ違いかもですが・・
YahooでVisual C++6.0欲しさにオマケソフトが色々付くと有ったVisualStudio6.0買ったんですが
肝心のC++6.0がセットアップできませんorz というかC++のCDがありません;
ひたすら検索しても妙な説明ページに引っかかりまくるばかり・・
どなたかセットアップ方法紹介しているサイトなり有ったら教えてください、
変な欲出さなきゃ良かった・・ ||orz 
0749デフォルトの名無しさんNGNG
MFCスレにも書かせてもらったのですが…
子ウィンドウにタブとかスライダー等、色々配置したいのですが
どうすればいいか迷っています。
プロパティシートを使えばという気もしますが
[OK]ボタン等が必要ないので、他にいい方法があれば
教えていただけませんでしょうか?
よろしくお願いします。
0750デフォルトの名無しさんNGNG
>>748 残念
0751616NGNG
CDないならセットアップの仕方調べてもしょうがないんじゃ...
0752デフォルトの名無しさんNGNG
>>749
1時間も経たんのにマルチポストするような香具師には答えたくない
0753デフォルトの名無しさんNGNG
MCIの質問です。よろしく。
CD再生しようとしているんですが
TMSF(トラック:分:秒:フレーム)で取得したDWORD値
をどうすれば秒に変換できますか?
というかそもそもそれは再生位置の移動(シーク)だけに使用
する値なんでしょうか。だったら、
別の方法で取得しなければいけませんが。
0754デフォルトの名無しさんNGNG
>>745
ルートにビットマップファイルを置いて読み込んでみたら?
フォルダ名・ファイル名だけでなく、Pathの途中にスペース、
全角等があると、読み込めない筈。
0755デフォルトの名無しさんNGNG
スレ違いかもしれませんが、他に見当たらなかったので質問させてください。

VB6.0でラベルをフォームに配置するときに、メニューバーで配置するのではなく、
コードを使って座標などを指定して配置したいのですが、どのようにすればいいのでしょうか・・?

また、lineメソッドなどで書いた図形が、他のアプリと重なった時に消えないようにするには
どうすればいいのでしょうか。
どなたかお願いします。
0756デフォルトの名無しさんNGNG
すぐ下にあるんだが・・・

VBプログラマ質問スレ(6.0以前) Part38
http://pc5.2ch.net/test/read.cgi/tech/1095673000/l50
0757デフォルトの名無しさんNGNG
すいません・・そっちできいてきます。
0758デフォルトの名無しさんNGNG
自作アプリに、ユーザ認証機能(ログイン画面)を追加したいのですが、
そういうDLLはありますでしょうか?
ご存知のかた教えていただけると助かります。
0759745NGNG
>>754
まったくそのとおりです。
ルートフォルダなら問題なくできました。
いろいろ試したところ、パス名に全角文字が入っていた場合に読み込みできないことがわかりました。

ありがとうございました。
0760デフォルトの名無しさんNGNG
VC++って最初のウィザードでViewを選択したら(簡単に)変えらんないの?
クライアント領域に一つのViewしかつくれないの?(分割しなかったら)

ほんとつかいずれーよなw
0761デフォルトの名無しさんNGNG
>>760
...
0762デフォルトの名無しさんNGNG
ageて煽りたい年頃なので放置してやってください
0763デフォルトの名無しさんNGNG
VC++のエディタで列番号を1行目の上に表示する方法教えてください。
0764デフォルトの名無しさんNGNG
できない
0765デフォルトの名無しさんNGNG
>>764
サンクス。
ほかの場所にでも無理ですか?
(右下の貧弱なのだけ?)
0766デフォルトの名無しさんNGNG
>>763
つか、VC++のバージョンを書いとけよ…

VS2003だったら、
オプション -> テキストエディタ -> C/C++ -> 全般
にある
0767デフォルトの名無しさんNGNG
このスレも.NET以前と以降に分けた方が良さそうな悪寒
0768デフォルトの名無しさんNGNG
managedC++スレあるじゃん。
0769デフォルトの名無しさんNGNG
次スレ立てる香具師はタイトルにどっちか書いておけ
0770デフォルトの名無しさんNGNG
VC 6.0 を使っています。
MFC AppWizard(exe)で作ったプログラムではメインをいじったりできませんか?
というかメイン関数を見ることすら出来ないんですが・・・。
0771デフォルトの名無しさんNGNG
>>770
何をしたいのか知らんが、WinMainはMFCの中にある。
0772デフォルトの名無しさんNGNG
レスありがとうございます。
ええ。実はそれ自体は知っているんですが,どうにかしていじれないですか?
やっぱり1から自分で作らないとダメでしょうか?
0773デフォルトの名無しさんNGNG
>>772
何をしたいのか知らんが、大抵のことはWinMain()以外で充分できる。
0774デフォルトの名無しさんNGNG
どういじりたいのか書かないので何とも言えんが
どうしてもWinMainをいじりたいなら当然自分で作らないとダメ。
0775デフォルトの名無しさんNGNG
>>772
メッセージで動くから、メインなんかいじってもしょうがない。
0776デフォルトの名無しさんNGNG
ディレクトリのパスを受け取って、その中の全てのテキストファイルに対して作業をする為に以下のようなコードを書いたのですが、
1ファイル目はうまくいくのに2ファイル目以降がfin.open((LPCTSTR)(dirname + "\\" + filename));でオープンに失敗してしまいます。
while(getline(fin, line))の部分をコメントアウトすれば成功するので、おそらく原因はそこなのでしょうが、何故なのかがわかりません。
出来れば解決法も含めて教えてください。開発環境は Visual C++.NETです。

CString dirname; /* ディレクトリの名前 */       CString filepath; /* dirname\*.txtに適合するファイルのパス */ 
CString filename; /* dirname\*.txtに適合するファイル名 */       CFileFind FileFind;
BOOL bfnf; /* FileFind.FindNextFile()の成否 */       string line; /* ファイルから1行読み込む時のバッファ */
ifstream fin;

filepath = dirname + "\\*.txt";
if(!FileFind.FindFile(filepath)) return FALSE;// dirname\*.txtなるファイルを取得。なければ終わり
do{
 bfnf = FileFind.FindNextFile();
 if(!FileFind.IsDots()){// .\や..\の除外
  filename = FileFind.GetFileName();
  fin.open((LPCTSTR)(dirname + "\\" + filename));// dirname\filenameのファイルを開く(CString->char*)
  if(!fin)return FALSE; // ファイルのオープンに失敗したらFALSEを返し終了
  while(getline(fin, line)){// 1行取って来る(失敗したら終了)
  /* 色々な作業 */
  }
 fin.close();
 }
}while(bfnf);
0777デフォルトの名無しさんNGNG
777
0778デフォルトの名無しさんNGNG
>>776
「色々な作業」でFileFindかなにかを壊している悪寒。
whileブロックをコメントアウトしたら動くのなら、少しずつ戻していってどこで動かなくなるか試してみ。
#ソース晒した方が早そうだが。
0779776NGNG
>>778
ありがとうございます。/* 色々な作業 */の所は今の所全てコメントアウトしているので、
多分関係ないのではないか、と思います。

2ファイル目でfin.openが失敗して(多分) if(!fin)が成り立ってreturn FALSE実行される↓
fin.open((LPCTSTR)(dirname + "\\" + filename));// dirname\filenameのファイルを開く(CString->char*)
if(!fin)return FALSE; // ファイルのオープンに失敗したらFALSEを返し終了
while(getline(fin, line)){// 1行取って来る(失敗したら終了)
/* 色々な作業 */
}
fin.close();

if(!fin)が成り立たず、全てのファイルでfin.openが成功しているのを確認↓
fin.open((LPCTSTR)(dirname + "\\" + filename));// dirname\filenameのファイルを開く(CString->char*)
if(!fin)return FALSE; // ファイルのオープンに失敗したらFALSEを返し終了
// while(getline(fin, line)){// 1行取って来る(失敗したら終了)
// /* 色々な作業 */
// }
fin.close();

こんな感じです。
 
0780デフォルトの名無しさんNGNG
>>779
getline()の第2パラメータの型とlineの型を調べよ。
#少なくとも>776はコピペミスしてそうだ。
0781マイク ◆yrBrqfF1Ew NGNG
std::ifstream::clear()じゃないよな?
0782776,779NGNG
>>781
それだ!!というかこんなのあったんだ…fstreamとか使うの初めての上適当にやってたので全然知りませんでしたorz
1つめのファイルのgetline(fin,line)がFALSEになった時にfinのファイルストリームがEOFにセットされてるから必要になるんですね。
ありがとうございました。
>>780さんもありがとうございました。
0783デフォルトの名無しさんNGNG
>>766
> VS2003だったら、
> オプション -> テキストエディタ -> C/C++ -> 全般
> にある
列を上に表示するオプションなんてないぞ??
0784デフォルトの名無しさんNGNG
ちゃんと探せ
■ このスレッドは過去ログ倉庫に格納されています