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

このエントリーをはてなブックマークに追加
952947:03/01/31 18:58
回答ありがとうございます
953888:03/02/01 10:58
>>938
ん〜。うまくいきませんね〜。
ってか、受信したやつが空になってます。
スレッドなのでこれをどこかで更新みたいのをやらないとだめなような気はしますが・・・
ブレイクポイントを置き、一つずつやるとうまく送信受信ができます。
938はタイムアウトなのか改行なのか知りたいんだろ
俺も気になるがどっちなんだ?
954に同意。タイムアウトしてるから空なんじゃないのか。
200のところをもっと大きくしたらいいんじゃないのか。
956888:03/02/01 16:19
そのままやっても一向に抜けないんですよ。
ループから。なにか受信するまで
待つっていうものはないですかね?
957デフォルトの名無しさん:03/02/01 16:31
あきれたけど
まあ初心者じゃしょうがないか
http://a414s1.it.nanzan-u.ac.jp/seminar/concurr/concurr/node15.html
>>956
つまり、どちらのダイアログもでないということ?
抜けてしまうのが問題だったのではないのですか?
抜けないはずはないでしょう。
結果報告もしないで勝手に話を次に進めないでください。

せっかく938みたいに親切な人がいるのに、
結果報告ぐらいきちんとできないと誰も助けてくれませんよ。
959名無し@沢村:03/02/01 17:08
>>956
ヌヒよ、もうあきらめたらどうだ。
沢村、お前ヌヒとか言うのやめろ。
気持ち悪いんだよ馬鹿が
>>956
おいおい、何矛盾した事言ってるんだ?
ループから抜けちゃうから問題だと言ったのはお前だろう。
ループから抜けないで先に進むなんてあり得ないんだよ。

こりゃあ、想像以上に初心者のようだな・・・。
初心者というか、人との会話方法を知らないのだろう。
本当の初心者でもこんな香具師はいない。
どうせそのうち「釣れた」とか言い出すんだろうな……
VisualC++7.0Professionalまだ出ないんですかね…
>>960
その沢村は偽者だ。相手にするな。
つーか沢村ネタ自体が全くおもしろくない。やってる奴のセンスを疑う。
>>966
放置したくてもできないお前のセンスを疑う。(藁
>>967=沢村
969デフォルトの名無しさん :03/02/02 14:47
MFCでAPIを使うことはできますか?
はい。
971デフォルトの名無しさん:03/02/02 14:49
はん?
972デフォルトの名無しさん:03/02/02 15:12
C++って何でつか?  ( ゚д゚)ポカーン
973デフォルトの名無しさん:03/02/02 15:52
無知なんですが、↓のソースを簡単な改造で
計算精度を上げるにはどうしたいいですか?
ボーランドのBCCやVC++.NETでビルドしたら
小数点20桁目で限界でした。long doubleしても結果は同じだったので・・・

#include "stdio.h"
#include "stdlib.h"
#include "iostream.h"
void main()
{
double a=0.0;
float b=0.0;
unsigned long l=0;
puts("計算機プログラミング宿題3 第1問:級数ごっこ");
for(l=1;l<1000001;l++) {
a+=( (l%2) ? 1.0 : -1.0) / ((double)l*(double)l);
b+=( (l%2) ? 1.0 : -1.0) / ((double)l*(double)l);
}
printf("1..1000000 with double is -> %.30lf\n",a);
printf("1..1000000 with float is -> %.30lf\n",b);
}
doubleって仮数部56bitだっけ?だとするとそのまま
どんなにがんばっても10進16桁しか有効にならないぞ。
>>975
すごい、ソース見つけるなんて・・・
いやただ、数値計算のソース適当に書いたら
変な計算結果になったんで、対策方法いろいろと
検索したら、たまたまそこがでてきただけ

ttp://www.nitoyon.com/vc/tips/multi_precision.htm
にある、多倍長とかいうの使えば精度あがるんかな
でも、めんどそう・・・
ゲタ履かせたら?
ていうか任意桁長の"仮数部","小数部"を表すクラスを用意して、
生のdoubleを直接いじる代わりにそれらの中でdouble値をゲタ履かせた
状態で保持しておいて、結果もそのクラスで出すってのは、どう?

オペレータもオーバライドすれば、さらにそれっぽくなるし。
978デフォルトの名無しさん:03/02/02 18:52
>>972
変数Cの値を1大きくするインクリメント演算子。
979中卒:03/02/02 19:02
>doubleって仮数部56bitだっけ?だとするとそのまま
>どんなにがんばっても10進16桁しか有効にならないぞ。

何でだよ
教えろよ
教えて訓ナイトないちゃうぞ
980デフォルトの名無しさん:03/02/02 19:19
ここ、本当に初心者スレなのか?
VisualC++ 相談室【9】
http://pc2.2ch.net/test/read.cgi/tech/1036897197/l50
これを見つけられないヤツが多いと見た
982デフォルトの名無しさん:03/02/02 19:41
WINUSER.Hに次のような記述があります。

typedef BOOL (CALLBACK* DLGPROC)(HWND, UINT, WPARAM, LPARAM);

typedefの例文を見ると、このような場合、

DLGPROC foo;

BOOL (CALLBACK* foo)(HWND, UINT, WPARAM, LPARAM);
という意味になるらしいんですが、ここで2つ質問。

この関数を呼び出すときは

(*foo) (hwnd, uint, wParam, lParam);

で良いんですかね? つまりfoo は関数のエントリポイントを差すポインタへのポインタ
ってことでいいのでしょうか?

それからもうひとつ。WINUSER.H では何種類か、この方式で定義されていますが、
これってどこで使用しているのでしょううか? *.rc とかは、これなんかな?


983デフォルトの名無しさん:03/02/02 21:12
こんばんは。相談なんですが、
std::
って入力した時点でコード補完の候補にcinとかcoutとかcerrとかが
出てこなくなりました。で、前まで大丈夫だったコードがstd::cout
とか使ってるところでエラーがでるようになりました。どうしたら
いいでしょう。すみませんお願いします
いつも思うのだが、どうしてエラーの内容を書かないのだろうか。
985デフォルトの名無しさん:03/02/02 22:50
Visual C++  ってC言語が理解できない馬鹿がお絵かきツールみたいなのを使ってプログラムするやつなんでしょ?
986983:03/02/02 22:57
すみませんです。
------------------構成: 5_0_0 - Win32 Debug--------------------
リンク中...
5_0_0.obj : error LNK2001: 外部シンボル ""class std::basic_istream<char,struct std::char_traits<char> > & __cdecl read(class
std::basic_istream<char,struct std::char_traits<char> > &,struct
Student_info &)" (?read@@YAAAV?$basic_istream@DU?$char_traits@

D@std@@@std@@AAV12@AAUStudent_info@@@Z)" は未解決です
5_0_0.obj : error LNK2001: 外部シンボル ""double __cdecl grade(struct
Student_info const &)" (?grade@@YANABUStudent_info@@@Z)" は未解決です

Debug/5_0_0.exe : fatal error LNK1120: 外部参照 2 が未解決です。
link.exe の実行エラー

5_0_0.exe - エラー 3、警告 0
987デフォルトの名無しさん:03/02/02 23:01
コンパイル中...
yakyu.c
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x81' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x40' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x81' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x40' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x81' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x40' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x81' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(93) : error C2018: 文字 '0x40' は認識できません。
D:\tomoki\C言語\project1\yakyu.c(107) : fatal error C1004: 予期せぬ EOF が検出されました。
cl.exe の実行エラー

yakyu.exe - エラー 9、警告 0

何度も確認しましたが間違いはないはずなのこうなってしまいます。どうすればいいですか?
988983:03/02/02 23:12
すみませんエラーは勘違いでした。それは解決したのですが、補完されなくなって使いにくいです…
すみません私は馬鹿です
990デフォルトの名無しさん:03/02/02 23:17
めちゃ初歩的な質問です。

ダイアログベースで作成しているのですが、
OKボタン、CANCELボタンを無効にして新しいボタンを2つ作成し、
そのボタンにOK、CANCELボタンの役割を持たせるように
プログラムしました。
その後、エディットボックスを追加したのですが、
IDCが追加されず、2つのボタンだけのIDCだけが表示されます。
どうやったらエディットボックスのIDCを追加することができますか?
>>987
大文字スペースは使えない。
大文字じゃないや、全角文字。
993デフォルトの名無しさん:03/02/02 23:25
>>990
IDCってリソースのIDのこと?
994デフォルトの名無しさん:03/02/02 23:27
>>994
そうです。
クラスウィザードでボタンを追加したときは、
IDC_BUTTON1
という風に追加されるのですが、
エディットボタンは表示されません。
ですから、メンバ変数をそこから追加できないのですが、
どのようにすればよいのでしょうか?
>>993
の誤りです。
995
997
998
>>994
神のみぞ知る
10001000:03/02/02 23:30
1000
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。