【漏れは】猫でもわかる質問スレ【猫以下です】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNGそこでこの本を買った人も多いのではないでしょうか。
それでもわからない事がたくさんある!
そんな時はここで質問しましょう。
本家サイト
ttp://www.kumei.ne.jp/c_lang/index.html
0153デフォルトの名無しさん
2005/06/10(金) 13:11:03読んだとおりにやっても駄目だった。
BCCにしても同じコンパイルエラーが出たぞ。
0154152
2005/06/10(金) 13:31:18初心者には無理だろうと思ったよ。
しかもstatic_castより、reinterpret_cast使った方が良いなんて余計に分からないだろう。
そんなんで初心者向きの本を出しているなんて、ちょっと配慮が足りないんじゃないのだろうか。
0155154
2005/06/10(金) 13:47:210156デフォルトの名無しさん
2005/06/11(土) 00:36:42基本的な社会の仕組みについて教えてください
われらが行うショムベムは、下水へと流れていくはずです
下水からおびただしい量のショムベムとウムコが汚水処理場に雪崩れ込むはずです
処理されます
一見きれいです
しかしこれはショムベムです
きれいになったショムベムはネイチャーに帰っていくと聞いていますが
いくらネイチャー帰りしたといってもショムベムであることは間違いないはずです
となると、われらはそのショムベムをまた飲んでしまう危険性があるのではないでしょうか
そこんとこどうなのでしょうか
0157デフォルトの名無しさん
2005/06/11(土) 00:48:190158デフォルトの名無しさん
2005/06/11(土) 00:55:57に変換するにはどう計算したら良いのでしょうか。
0159デフォルトの名無しさん
2005/06/11(土) 06:46:25傾斜:x*x+y*yをシフト
高校数学程度
0160デフォルトの名無しさん
2005/06/11(土) 13:43:49もまえらに言っておきたいことがある。
猫 ち ゃ ん 以 上 の 人 間 な ん て い な い !!!
0161デフォルトの名無しさん
2005/06/20(月) 03:41:32エスケープ・シーケンスもそうでしたが
C++のcoutを使った説明が致命的
VISUAL C++.net 2003で使えないのが多すぎる
本を買った私が馬鹿でした。
猫は2003は使わないのですね。
ところでcoutを使わないでVISUAL C++.net 2003
を使用して勉強している方
どの命令を使っているのでしょうか
0162デフォルトの名無しさん
2005/06/20(月) 03:50:37普通にstd::coutを使えばいいと思うのだが。
0163デフォルトの名無しさん
2005/06/20(月) 10:54:14おお〜
早速std::coutでコンパイル通りました!!
iostream.hが使えないのが分かるまで数時間
coutが使えないのが分かるのに数時間
計数十時間掛けてやっと通りました。
一ヶ月前からC言語学習してますが
プログラムって難しいですね。
有難う御座いました。
挫折しそうでしたが何とか行けそうです。
本当に有難う御座いました。
PS ついでですが
DOSのエスケープ・シーケンス
は2003で使えないで有っているでしょうか??
出来たら色指定等再度チャレンジしてみたいのですが
知っている方ご指導宜しくお願いします。
0164デフォルトの名無しさん
2005/06/20(月) 11:07:28PS ついでですが 猫でもわかるを2年読んでるのですが未だに猫以下ですw
0165デフォルトの名無しさん
2005/06/20(月) 20:16:24Windows NT系ではDOSプログラムしかDOSのエスケープ・シーケンスは使えない、というのが正解。
VS.NetではDOSプログラムは作れない。
もちろん代わりの方法はある。
http://www.kumei.ne.jp/c_lang/intro/no_58.htm
0166デフォルトの名無しさん
2005/06/20(月) 20:59:36Win32コンソールプロジェクト作ればいいんでないの?
0167165
2005/06/20(月) 21:06:13コンソールプロジェクトでも出来るのは32ビットEXE。
0168デフォルトの名無しさん
2005/06/20(月) 21:52:42沢山のレス有難う御座いました。
>>165
さん有難う御座いました。
なるほど別のやり方が有ったんですね。
53章で終わってましたので
気付きませんでした。
>>166
さん有難う御座いました。
Win32コンソールプロジェクト作ればいいんでないの?
Win32コンソールプロジェクトでは猫のやり方26章でだめでした。
>>167
さん有難う御座いました。
なるほどですね。取りあえず
53章のやり方で26章からエスケープ・シーケンスやって見たいと思います。
結構見ている方多いみたいで助かりました。
皆さん感謝です!!
有難う御座いました。
0169デフォルトの名無しさん
2005/06/20(月) 22:23:420170デフォルトの名無しさん
2005/06/20(月) 22:48:32初心者向きの本・WebサイトならCと同じようなことから始めているから最初からC++でも全然問題ない。
0171デフォルトの名無しさん
2005/06/20(月) 22:50:270172デフォルトの名無しさん
2005/06/20(月) 23:09:36×コンソール
○カンソーゥ
ナメんじゃね!!!
英語を。
俺の愛する英語を。
んなこったから日本人の英語はわからないってメリケン粉から言われるんだよ!!!
恥ずかしいと思わないのか!!!
0173デフォルトの名無しさん
2005/06/20(月) 23:18:14よく、言語によって速度が違うとか言うじゃないですか?
でも、みんな最後はマシン語にコンパイルされるんだったら、
どの言語が早いなんってないじゃないですか。
(コンパイル時間の長短はあっても)
じゃなんで違いがあるんですか?
0174デフォルトの名無しさん
2005/06/20(月) 23:20:32コンパイラの最適化の性能。
あと言語自体がマシン語での最適化に向いているような構文を備えているなどということもある。
0175デフォルトの名無しさん
2005/06/20(月) 23:40:45すみません、聞き方が悪かったです。
友人からC言語の本を借りていて、それで勉強しようと思うのですが、
後からC++を習おうとしたときに十分応用が効きますか?と言いたかったのです。
基本的な文法などはCもC++も変わりませんよね?
0176デフォルトの名無しさん
2005/06/21(火) 00:24:03です。
Cは基本的にはC++でコンパイルは通ると
猫のホームページには書いてました。
0177デフォルトの名無しさん
2005/06/21(火) 02:08:48C使いがC++を本気でやろうと思ったら、まずCの先入観を払拭する事から始めないと。
逆にこの辺の切り分けが出来てないと、Cに毛の生えた程度のコードしか書けなくなる。
(そゆコードは実際多い)
0178質問
2005/06/21(火) 08:44:30ファイルをマクロを有効にして起動すると、フリーズするようになりました。
workbookに書いてあるプログラムをチェックしましたが、
ループするような、記述はありません。
エクセルを起動したときに、全プログラムを読みに行ってエラーが
出ているのでしょうか?
こんなことってよくあるのかな?
0179デフォルトの名無しさん
2005/06/21(火) 10:41:59スレ違い。
http://pc8.2ch.net/test/read.cgi/tech/1105108229/
http://pc8.2ch.net/test/read.cgi/tech/1054356121/
http://pc8.2ch.net/test/read.cgi/tech/1107946285/
http://pc8.2ch.net/test/read.cgi/tech/1114329636/
http://pc8.2ch.net/test/read.cgi/tech/1118072681/
0180質問
2005/06/21(火) 12:59:12VER わからなかったのでここで聞いてしまいました。
verというのは、スレッドの数だったのですね、すみません。
ちなみに、名前が重複しているだけでした。逝って来ます
0181デフォルトの名無しさん
2005/06/22(水) 01:07:22俺はいいと思うぞ better C
C言語でオブジェクト指向もC++で構造化もいいじゃないか!
0182デフォルトの名無しさん
2005/06/22(水) 01:29:08形式なんですか?猫のパクリですか?コード部分のフォントは
大きく太くしているし、解説の構成も非常に似ていると思うのですが。
0183デフォルトの名無しさん
2005/06/22(水) 07:58:00どうしてどこも同レベルの内容しか書かないかなぁ。
と、思ってしまう。
0184デフォルトの名無しさん
2005/06/22(水) 10:42:360185デフォルトの名無しさん
2005/06/22(水) 12:33:58保存されるようにするにはどうしたらいいんでしょうか?
ファイルの読み込みは載っているんですが、本を見てもよくわからないので・・・
0186185
2005/06/22(水) 12:35:43c++で、コンパイラはborland5.5です。
スレ違いだったらごめんなさい。
0187デフォルトの名無しさん
2005/06/22(水) 12:41:560188185
2005/06/22(水) 12:49:15これを、実行すると自動的にファイルが作成されるように
プログラムの中に組み込みたいのですがどうすればいいのでしょうか?
0189デフォルトの名無しさん
2005/06/22(水) 12:55:58↓
fopen();
fprintf(...);
0190185
2005/06/22(水) 13:40:270191デフォルトの名無しさん
2005/06/24(金) 01:42:320192まちがえた
2005/06/24(金) 01:43:100193デフォルトの名無しさん
2005/06/24(金) 02:18:010194デフォルトの名無しさん
2005/06/24(金) 02:18:270195デフォルトの名無しさん
2005/06/24(金) 02:27:120196デフォルトの名無しさん
2005/06/24(金) 03:23:380197デフォルトの名無しさん
2005/06/24(金) 03:43:360198デフォルトの名無しさん
2005/06/27(月) 03:03:33typedef struct _LIST{
double hoge;
struct _LIST *next;
} LIST;
LIST *list_p, *list_current;
HGLOBAL hMem;
hMem=GlobalAlloc(GHND, sizeof(LIST));
list_p=(LIST*)GlobalLock(hMem);
list_current=list_p;
hMem=GlobalAlloc(GHND, sizeof(LIST));
list_current->next=(LIST*)GlobalLock(hMem);
list_current=list_current->next;
として作成したのですが、このリストをGlobalUnlock, GlobalFreeするときに
最後にGlobalLockした部分以外は作成時のhMemが分からなくなってしまいGlobalUnlock
できなくなっています。
C++やWindowsプログラミングは初めてで、これまでやってきたmallocをGlobalAllocやGlobalLockに置き換えただけで、
もっと良い方法があるのかもしれませんが、調べる方法も分かりません。
今の確保方法でうまくGlobalUnlock, GlobalFreeする方法、または、別のうまい方法をお教えていただけないでしょうか。
0199デフォルトの名無しさん
2005/06/27(月) 04:44:52まるっきり質問と違う答えになるが。
そもそも GlobalAlloc(), GlobalLock() 等を直接使うのは効率が悪い。
代わりに HeapAlloc() なんかもあるけど、特に理由がなければ Win32 上だろうと、
malloc() なり new なりを使うべき。
C++ なら new だね。
後、さらにけちけちするなら、1個1個要素を確保せずに配列で確保してしまい
さらにそいつをリストとして構成して空きリスト要素として用意しておく、というのもあり。
LIST *p = new LIST[N];
for(int i=0; i<N-1; i++) p[i].next = p+i+1;
p[N-1].next = NULL;
この場合、解放用に確保した時の先頭アドレスを保存しておく必要があるんでその処理は必要。
ただ、勉強のために線形リストを作ってるんじゃなければ C++ なら STL 使うのが一番楽だと思う。
0200198
2005/06/27(月) 05:16:44ありがとうございます。
今作っているプログラムでは、データの数の上限がありません(!?)ので配列で確保しておいて…というのは避けたいと思っています。
(といっても結局はある程度以下のデータですので思いっきり確保しておけばいいんですが、その辺り貧乏症なもので ^^;)
STLというのを検索してみて、とても楽に実現できそうですのでこれを使うことにしました。
(イテレータというのがまだ理解できていませんが)
0201デフォルトの名無しさん
2005/06/27(月) 11:02:16解説お願いします
variance += (total[i] - (double)sum / N) * (total[i] - (double)sum / N);
いちよう書いておくとVisual C++ XPです。
0202デフォルトの名無しさん
2005/06/27(月) 13:12:49(double)は整数sumを実数へ変換。整数でなく実数で除算するため。
・total[i] - (double)sum / N ⇒ i番目の誤差 εi = total[i] - μ
total[i]がi番目の標本?
・( )*( )⇒i個目の誤差の二乗
・+=がΣの加算部分。ループの中にあるから。
求める分散は ループの外で variance / N とすると
分散σ2条 = 1/N ・Σ(xi-μ)2条
になる。あとはどっか別スレで。
0203デフォルトの名無しさん
2005/07/02(土) 11:20:22ボタンダイアログを一時的に押せなくするのに,
今はメッセージを無視するようにしているだけなのですが,
なにか間違っている(もっと正しい方法がある)ような気がします。
メニューのEnableMenuItemのようにボタンダイアログを簡単に無効にする方法はないのでしょうか。
0204デフォルトの名無しさん
2005/07/02(土) 11:24:49EnableWindow()
0205203
2005/07/02(土) 11:36:27ありがとうございます。
こういう関数ってどうやって探されてるんですか?
webで検索しようとしてもなかなか見つけられなくて…。
と書きつつ「ダイアログ 無効 ボタン」で検索したらザクザク出てきました。
なにで探してたんだろう > 今までの自分
0206デフォルトの名無しさん
2005/07/02(土) 12:28:35WEB探しとは効率が悪いものなのだ
となると頭に記憶させておくか紙媒体しかないのだが
紙の媒体では全ての関数を網羅したものはひとつもない
MSDNでさえ「よく使われる関数」しか載ってない
0207デフォルトの名無しさん
2005/07/02(土) 12:38:230208203
2005/07/02(土) 12:58:11頭に記憶させておくための情報を得る方法がちょっと…という感じなんです。
やりたいことがある→時間をかけてさがす→なんとか見つける
(↑頑張ってるように書いきましたが今回は挫けて2chで聞いちゃいました ^^;)
としても,そのときやりたいことができるようになるだけで,
引き出しといいますか,「やったことはないけどこれはこんなときに使えるな」
というのが全然増えてきません。
泣き言いってないでドンドン作っていけばイロイロ身についていくのかもしれないけど,
その作り方が本当にあっているのか(もっと正しいやり方があるんじゃないか)という
不安も常についてまわります。
>>207
英語版ですか…私にはちょっと。
0209デフォルトの名無しさん
2005/07/02(土) 13:15:35WEBだと、検索して吟味して覚えるまで1dayかかることもザラだし、
まかり間違ってトゥーチャノー(英語は発音大事)なんか見た日にはさらに時間がかかる。
0210デフォルトの名無しさん
2005/07/02(土) 13:33:43まあ、それでもたまに有益な情報もあるから侮れないんだけど、
「○○にはまった」としか書いてなくて、解決方法が皆無の「ただの日記」とかでてくるとディスプレイをカチ割りたくなるような衝動に襲われるw
0211デフォルトの名無しさん
2005/07/04(月) 20:40:08ビルドに20秒くらいかかってしまいます。
短くできる設定はないでしょうか?
当方Visual Studio 2003 .NETです。
0212デフォルトの名無しさん
2005/07/04(月) 21:07:17コンソールからコンパイルすればもうちょっと速いと思う。
0213デフォルトの名無しさん
2005/07/04(月) 21:09:40窓のあるプログラムを作りたいのでそれじゃ無理なんです…。
0214デフォルトの名無しさん
2005/07/04(月) 21:44:17本日7月4日、下記スレを拠点に支那反日サイトへ一斉に
田代砲を発射し、 これを破壊します。参加者はいかのスレ
に参加してください。 野蛮なる支那人へ、日本の義憤を
見せつけましょう! 今夜8時に作戦会議がBARギコで開かれ
ますので、有志のみなさんは是非、お集まりください!
なお、BARギコの会議で決まったことについては、随時
このスレに書き込みます。
★拠点
【織姫と】中国バカーVS日本ビパー【彦星が呆れてる】part105
http://ex11.2ch.net/test/read.cgi/news4vip/1120396339/l50
★詳細情報のサイト(文字化けしているので、修正して見てください)
http://vvipper.e-city.tv/1.htm
★まとめサイト
http://vipmomizi.jog.buttobi.net/
0215デフォルトの名無しさん
2005/07/05(火) 10:18:39んなこたーない
0216デフォルトの名無しさん
2005/07/05(火) 18:18:37何かを取得する場合はGetxxx、何かを設定する場合はSetxxx、有効無効は
Enablexxx、何かを挿入する場合はInsertxxx、などなど、大体共通しているので、
あとはxxxの所に、システム関係ならSystem、ウィンドウ関係ならWindow、
など思いつく単語を続けてMSDNのキーワードを探す。またはSDKスタイルなら、
開発環境のエディタで::というグローバルスコープを打ち込むと入力補完リストが
出て来るから、あとは続けて::GetSystemのように
していくとそれらしいのが出て来るので、良さそうなAPIが見つかったら
MADNで詳細を確認して使用する。
0217デフォルトの名無しさん
2005/07/05(火) 20:21:570218デフォルトの名無しさん
2005/07/05(火) 22:10:03いや、EnableWindow()。
有効にする関数と無効にする関数に分かれているのは無駄だから、Enable〜()でDisableにできるようになっている。
ボタンもウィンドウの一種だからウィンドウ全般に使える一般的な関数として〜Window()。
0219203=205
2005/07/05(火) 22:50:54その辺の勘(?)を身につけるには,いろいろ書いてみるのが一番なんだろうとは思います。
泣きごと言わずに精進していこうと思います。ありがとうございました。
すみません…SDKスタイルというのがわかりません。
どういうもののことを言うんでしょうか?
>>217
EnablexxxがFALSEなんですよね。
その辺のことが今回のことで勉強になりました。
ところで,EnableWindowをwebで検索していると,
ウィンドウのハンドル->EnableWindow(FALSE);
という記述があり,そのまま書いてもコンパイルも通らなかったので,試しに
EnableWindow(ウィンドウのハンドル,FALSE);
と書くとうまくいきました。
うまくいかなかった書き方はどのようなときに可能なんでしょうか?
#webで調べたのはEnableWindowの使い方ではなくGetDlgItemだったんですが…
#あ,そういえばこれもGetxxxですね(^^)。
0220デフォルトの名無しさん
2005/07/05(火) 22:53:39ウィンドウのハンドル->EnableWindow(FALSE);ってのはMFCだ。
0221デフォルトの名無しさん
2005/07/05(火) 22:59:00CWndまたはその派生クラスのオブジェクトへのポインタ->EnableWindow(FALSE)
だぁね。
HWND->CWnd変換はCWnd::FromHandle(HWND hWnd)なりAttach(HWND hWnd)なり
好きなほうを使うよろし。
0222デフォルトの名無しさん
2005/07/05(火) 23:09:09>>219がCWndを使うと決め付けるなよ。
0223デフォルトの名無しさん
2005/07/05(火) 23:39:23Visual C++6.0を使っています。
外部にライブラリを作って使いまわしたいと思い、ワークスペースとは別のディレクトリに、とりあえずwin版のprintfを作りました。
しかしコンパイルする時、externで参照しようとすると、外部関数の実態が無いっぽいエラーが出ます。
全く同じ内容のを、ワークスペースと同じフォルダ内で作ると通ります。
さっぱり分かりません。どうやったら外部から呼び出せるのでしょうか?
エラー内容
main.obj : error LNK2001: 外部シンボル ""long __cdecl winPrint(char const *,...)" (?winPrint@@YAJPBDZZ)" は未解決です
Debug/test.exe : fatal error LNK1120: 外部参照 3 が未解決です。
link.exe の実行エラー
0224デフォルトの名無しさん
2005/07/05(火) 23:45:16関数の実態があるファイルは、ファイルをフォルダに追加しています。
0225デフォルトの名無しさん
2005/07/06(水) 02:24:41VB2005EEBを使っているのですが、
(1)コンパイルすると、ファイル名.exe.deployになってしまうのですが、deployは余計なんですが、
つかないコンパイル方法ってありますか。
(2) deployが気持悪いので、deployを削って、.exeだけにして、かつ、.NetFrameをインストール
してないパソコンに持ち込んで実行させたんだですが、何かの拍子で実行できるようになった
のですが、これは正しい使用方法ですか。側に.manifestとか、.applicationファイルが存在すると
実行できるようになるのですか?
猫以下の初心者なので、教えてください。
0226デフォルトの名無しさん
2005/07/06(水) 23:04:14手元にVC++がないんでおぼろげな記憶しかなくてもうしわけないんですが、
どこかにコンパイルオプションのようなものを設定できるものがあって、
そこでライブラリパスのようなものを設定できるはずです。
0227デフォルトの名無しさん
2005/07/06(水) 23:14:53何のことやら全くわかりません。
VBのことはVBのスレに行った方がいいとおもいますよ。
0228223
2005/07/08(金) 21:25:55ありがとう。でも、それでも駄目なようです。
とりあえず、ライブラリをディレクトリ内に無理矢理コピって動かしてますが、かなり微妙です。
0229デフォルトの名無しさん
2005/07/08(金) 21:37:15(ファイル名が.cppと.cを混ぜてる場合も含む)
0230デフォルトの名無しさん
2005/07/08(金) 21:48:47親切な方ご返信お願いします。
0231デフォルトの名無しさん
2005/07/08(金) 22:36:420232デフォルトの名無しさん
2005/07/09(土) 16:18:04あほの諸君らにもわかるんちゃうん?こたえてみ!
0233デフォルトの名無しさん
2005/07/09(土) 21:43:420234デフォルトの名無しさん
2005/07/09(土) 22:34:22もしかしねーよ!ボケ!
って言いたくなる。
0235デフォルトの名無しさん
2005/07/09(土) 23:01:11ロイター通信の「ロイター」と入れると
もしかして:ローター
と出てきた。
もちろん一番上に来るのは「ウィィ〜ン」ってなるローターの通販
0236デフォルトの名無しさん
2005/07/09(土) 23:09:180237デフォルトの名無しさん
2005/07/09(土) 23:49:250238223
2005/07/10(日) 08:14:55はい混ざってます。
ライブラリの中に.cだけのがあります。
。。。まさか、それなんですかね???
ちょっと試してみます。ありがとうございます!
0239223
2005/07/10(日) 17:23:49それと、リビルドしてなかったのも問題だったぽいです。
ありがとうございましたん♪
0240デフォルトの名無しさん
2005/08/24(水) 00:51:17ソフトって有りますか?
0241デフォルトの名無しさん
2005/08/24(水) 08:58:53板違いだから、もう来んな
0242デフォルトの名無しさん
2005/09/18(日) 14:48:12猫でもわかるのページの C++のページの26章のファイルの入出力のところで
実行するとファイル名は入力してファイルができるのですが文字が書きこめません。
解かる方教えていただけないでしょうか?
0243デフォルトの名無しさん
2005/09/18(日) 15:07:590244デフォルトの名無しさん
2005/09/18(日) 15:12:21cout << c;
ここの部分がうまくいかないのですが
0245デフォルトの名無しさん
2005/09/18(日) 15:33:30多分ファイル名が間違ってるとかじゃない?
0246デフォルトの名無しさん
2005/09/18(日) 16:06:560247デフォルトの名無しさん
2005/09/18(日) 16:10:05「母のエプロン姿」でググッたらこのスレが引っかかったw
0248デフォルトの名無しさん
2005/09/18(日) 21:40:380249デフォルトの名無しさん
2005/09/18(日) 23:00:220250デフォルトの名無しさん
2005/09/18(日) 23:45:432. 売れて儲かるソフトをコーディングし、コンパイルする。
3. 売れて儲かるソフトをメディアに焼くか、プレスする。
委譲
0251デフォルトの名無しさん
2005/09/18(日) 23:46:140252デフォルトの名無しさん
2005/09/18(日) 23:49:44■ このスレッドは過去ログ倉庫に格納されています