[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/28 11:42 / Filesize : 246 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【初心者歓迎】C/C++室 Ver.45【環境依存OK】



1 名前:デフォルトの名無しさん mailto:sage [2007/12/08(土) 14:09:22 ]
エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。
※sage禁止です(と代々スレに書いてありますが自己判断で)。
【前スレ】
【初心者歓迎】C/C++室 Ver.44【環境依存OK】
pc11.2ch.net/test/read.cgi/tech/1194016813/
【アップローダー】(質問が長い時はココ使うと便利)
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm

47 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 01:20:42 ]
>>46
わざわざサンクス
ぐぐり不足ですた

48 名前:24 mailto:sage [2007/12/09(日) 01:26:42 ]
まとめて、皆様、有難うございました。
CとC++では、意味が違うなんて。



49 名前:デフォルトの名無しさん [2007/12/09(日) 02:45:29 ]
STLの使い方についての質問です。
例えばpair<int, string>の要素を持つvector Vecがあったとき、
iteratorでintがiXYであった時に、pairの片割れのstringを返す場合、
下のコードではコンパイルエラーが出ます。

vector<pair< int, string > >::iterator it;
for ( it = Vec.begin(); it != Vec.end(); ++it )
{
if( *it->first == iXY ) return *it->second;
}
return NULL;

iteratorで間接参照は、*をつけるといろんなところに書いてあったので
上のようにしたのですが、*を取ると、正常に動きました。
でもなんで*を取るのかがわかりません。だれかおしえてください。

50 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 02:54:00 ]
iteratorは要素を指すポインタのようなモノだと考えれば、
ポインタに*をつけると実体pair<>を指すことになる。
んで、pairに->演算子はオーバーロードされてないからエラーになるわけだ。

大体あってる?

51 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 02:55:38 ]
(*it).second
it->second

こういうことじゃなくて?

52 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 02:59:32 ]
この場合*をつけると演算子の優先順位の関係で

if( *(it->first) == iXY ) return *(it->second);
と同じになり、イテレータの参照剥がしではなく、firstおよびsecondメンバつまりint,stringの参照剥がしになる。
int,stringはポインタやイテレータではないのでエラー。

*を使いたければ、こう
if( (*it).first) == iXY ) return (*it).second);


53 名前:50 mailto:sage [2007/12/09(日) 03:01:00 ]
優先順位間違ってた/(^o^)\

54 名前:49 [2007/12/09(日) 03:15:00 ]
みなさん、ありがとう!
もっと精進しまっす!


55 名前:デフォルトの名無しさん [2007/12/09(日) 04:40:48 ]
vector<string> str; str.resize(10000);
はメモリは少しも食わないんでしょうか?
stringって作った時点ではメモリー確保しないですから、配列でも一緒ですか?




56 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 04:57:19 ]
>>55
string自身にだってサイズはあるよ。
俺の環境だと、string型は28バイトもある。

57 名前:デフォルトの名無しさん [2007/12/09(日) 05:05:11 ]
サンクス

58 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 09:43:27 ]
スレ違うかもしれないがfloat除算を間違えるって言うのは、間違えていた
アクセスできない配列にアクセスしていただけだった

59 名前:58 mailto:sage [2007/12/09(日) 10:09:23 ]
floatのエラーではなくてvectorのバク(解放のタイミング)だった
何度も配列を短時間で生成繰り返したとき、前のが解放される前に次の確保がくると駄目らしい
グローバルに一度確保にしたら良くなった

60 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:10:31 ]
>>59
何の話かわからんがkwsk

61 名前:58 mailto:sage [2007/12/09(日) 10:14:33 ]
こんな感じのやつ 再現するかは不明 確保するサイズを大きくするほどしやすい可能性あり

double fnc(void) {
vector <double> x(100000,1);
return x[0];
}

main(){
double sum=0;
for(i=0;i<10000;i++)sum+=fnc();
cout<<sum;
}

62 名前:58 mailto:sage [2007/12/09(日) 10:16:05 ]
解放が追いつかず、次から次へと確保が来ると駄目らしい

63 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:18:58 ]
>>58
環境は?普通は seg fault とかエラーで落ちると思うんだけど。
そうじゃなければ vector の bug ということなのかな。

64 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:28:37 ]
>>61
手元のVC2005EE, bcc5.82, gcc3.4.4で問題なかった。
>>58の環境が知りたい。

65 名前:58 mailto:sage [2007/12/09(日) 10:34:04 ]
bcc5.5.1です

あと確保する数は、実際には違います
#define N 2678400 
として
vector<int> date(N,0);
vector<double> x(N,0);
をサブルーチンで何度か確保して
dateとxの前半(1/3くらい)をアクセスしてリターンすると毎回違う回数で落ちます



66 名前:58 mailto:sage [2007/12/09(日) 10:35:31 ]
いま計算したところ一回ごとに確保する容量は32M程度です

67 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:38:51 ]
「落ちる」で済ませる奴は信用できない。

68 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:39:22 ]
>>66
> dateとxの前半(1/3くらい)をアクセスして

↑このへんにバグがあるかもしれんので最小限のソースをくれるとありがたい。
あと、落ちるというのは例外を吐くのか、問答無用で落ちるのかも知りたい。

69 名前:58 mailto:sage [2007/12/09(日) 10:46:17 ]
>>68
グローバルに定義して何度も繰り返して使ったら全く落ちなくなりましたよ

70 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:48:00 ]
>>65
「落ちる」って seg fault とかでプログラムがクラッシュするの?
それだったらメモリが足りないなら正常な動きだと思う。

もしも、出力して正常に終わったように見えて違う答だというのならば大問題。

71 名前:58 mailto:sage [2007/12/09(日) 10:51:44 ]
>>70
DOSプロンプトからエラーを言われ停止しますよ 終了後ごとにvectorは解放されるはずなのでメモリ不足にはならないはずですよ

72 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:53:33 ]
>>69
そういうアドホックな対処ではなくて、もっと具体的な原因が知りたいなあと。
そもそもコンパイラ(vector)のバグと見なしてるようだけど、それも疑わしいしね。

コンパイラのバグ → ここを見た人に役立つ
>>58の書いたコードのバグ → 同じ過ちを繰り返さずに済む

73 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 10:57:09 ]
この時まだ>>58は知らなかった>>67が真実だということを。

74 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 11:00:14 ]
>>71
>>58 の書き方だと結果が出て間違っているように読める。
最後まで走って結果が出て、違ったという場合はあったの?

75 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 11:02:05 ]
再現性のあるソースを出せば一発なのに端折って小出しにする奴の多いこと



76 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 11:03:55 ]
エラーメッセージはコピペ。
コレ常識ネ。

77 名前:wolf ◆8VH3XAqjlU mailto:sage [2007/12/09(日) 11:31:49 ]
>>24
>>26

int a; <= これはどっち? <--- declaration with simple-type-name
int main(){
int b; <= これはどっち? <--- declaration with simple-type-name
}

Grammar of C++ Declarations
msdn.microsoft.com/library/ja/vclang/html/_pluslang_Grammar_of_C.2b2b_.Declarations.asp?frame=true


78 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 11:44:47 ]
>>26
> int a; <= これはどっち?
> int b; <= これはどっち?
C++ なら、どっちも定義だ。

79 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 12:04:27 ]
>>77
なんだコイツ?
何が言いたいのかさっぱり分からないんだが、77はアホの子か?

80 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 12:07:20 ]
>>58こないのか。残念。

81 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 14:54:22 ]
VCです
class Foo {
 char szBuff[MAX_PATH];
 ZeroMemory( szBuff, MAX_PATH );
pubulic:
 Foo();
 ~Foo();
};
szBuffをコンストラクタの初期化子で初期化するにはどの様に書いたらいいですか?


82 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 15:20:07 ]
int a; <= これはどっち?
int main(){
int b; <= これはどっち?
}
両方とも宣言定義です。
略して、宣言、定義、または、宣定という人もいます。

83 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 15:20:46 ]
>>81
できません。 vector にすれば初期化できます。この場合は本体の中で
ZeroMemory() しても同じ結果になります。

84 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 15:32:20 ]
>>83そうですか、ではあきらめます


85 名前:デフォルトの名無しさん mailto:sega [2007/12/09(日) 17:37:11 ]
クラスとかはヘッダに書くと思いますが
コンパイルしてオブジェクトにしておくことはできないのでしょうか。
毎回コンパイルするのは非効率だと思います。



86 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 17:45:50 ]
>>85
C/C++ ではヘッダでは定義なしの宣言だけにしておいて、対応するソースファイルで
定義を与えるという方法で重複コンパイルを避けるのが一般的。

C++ のテンプレートによってこの方法がうまく機能しにくい状況になっているので、
コンパイラによってはプリコンパイルドヘッダとか、あらかじめヘッダをコンパイルして
保存しておく機能を持っているものもある。

87 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 17:57:13 ]
>>86
そのあたりの「一般的」な作法がまとめてある書籍はありますか?
VC++では無い本がいいけど、独習C++とかになるんですかね?

88 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 19:20:51 ]
お作法のまとめだったら Effective シリーズとかがいいんじゃないの。

89 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 20:43:11 ]
>>61
ちょっと遅レスだが
BCCの最新バージョンBCC5.9.2(C++Builder2007付属)では落ちない

90 名前:wolf ◆8VH3XAqjlU mailto:sage [2007/12/09(日) 21:11:03 ]
>>82
Sure, the following may not be accepted in the school.

Declaration:
However, many declarations serve as definitions.

Definition
A definition provides information that allows the compiler to allocate memory for objects or generate code for functions.

Object
An object is an instance (a data item) of a user-defined type (a class type).

C++ terms used in this book are defined in the following table:
msdn.microsoft.com/library/ja/default.asp?url=/library/ja/vclang/html/_pluslang_terms.asp

91 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 21:36:31 ]
>>90
基地外スレにお帰りください

92 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 21:58:13 ]
お勧めなエディタ教えて

93 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 21:59:25 ]
c言語って数学で言うところの中括弧{}と同じ機能を持つ演算子って有る?
それとも、変数を使って一時的に値を記憶させないと駄目?

94 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 21:59:56 ]
>>92
cat

95 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 22:00:46 ]
>>92
すれ違い。いちおう誘導しとくけど、その聞き方じゃどこでもまともな答えは
期待できないと思われ。せめて今使ってるやつのどこが不満なのか書かないと。

【エディタ】ソース何で書いてる? 1スレ目
pc11.2ch.net/test/read.cgi/tech/1164154920/

テキストエディタをまた〜り語ろう ver.24
pc11.2ch.net/test/read.cgi/software/1194361643/



96 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 22:02:15 ]
>>93
数学で言うところの中括弧ってなんだ?式の優先順位を決めるための括弧なら、
何重だろうと全部丸括弧を使うんだけど。

97 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 22:12:44 ]
>>96
そうなんですか!
それなら、
数学で
{(5)(176) - (26)^2}{(5)(145) - (25)^2}のルートって、
C言語なら、
sqrt(((5)*(176) - (26)*(26))*((5)*(145) - (25)*(25)))
でOKですか?

98 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 22:21:53 ]
>>97
演算子の優先順位を調べたらわかると思うけど、
乗除算の方が加減算より優先されるので括弧を減らせるよ

99 名前:デフォルトの名無しさん mailto:sage [2007/12/09(日) 22:24:45 ]
>>98
なるほど!
だったら、
sqrt((5*176 - 26*26)*(5*145 - 25*25))
でおkですね!

100 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 02:08:00 ]
ハッシュテーブル作るときなんですけど・・・

vector< myclass >型の固定長配列を用意して、それを例えばTBL[n]として
衝突が起こったらTBL[n].resize(2)して別のデータを格納していけば実装できそうですけど
一次元に自分で登録先を見つけてくる方法より効率悪いですか? 衝突は頻繁に起こらないとします

101 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 02:42:27 ]
>>100
効率って言っても空間効率と速度効率がある。速度にしても、実際の比較が
ハッシュ関数に比べてどんだけ思いかで変わるでしょ。そこらへんの情報無しには
答えようがない。効率は実測が基本。

102 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 02:53:22 ]
メモリ効率は動的確保の方が上ですけど、メモリ解放と確保にかかる時間なんですよね
実測してみます

103 名前:93 mailto:sage [2007/12/10(月) 04:46:38 ]
質問です。
hoge = (26 * 176 - 25 * 24) / sqrt((26 * 23 - 5 * 5) * (26 * 6 - 7 * 10));
というプログラムを書いて正しい結果が出力されたのですが、
これはどうしてでしょうか?
sqrtは戻り値として、平方根を返す関数ですが、この場合戻り値を受け取っていませんよね。
まるで、sqrt((26 * 23 - 5 * 5) * (26 * 6 - 7 * 10)がこの式の計算結果そのもののように感じるのですが、これはC言語の機能なのでしょうか?


104 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 04:52:09 ]
>>103
戻り値はちゃんと / 演算子が受け取っています。

105 名前:93 mailto:sage [2007/12/10(月) 05:02:22 ]
>>104
ええっ、そうなんですか?
演算子にそんな機能が有ったとは知らなかったです。
どこか詳しく説明している本やサイトは無いでしょうか?



106 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 05:04:46 ]
無い

107 名前:93 mailto:sage [2007/12/10(月) 05:10:40 ]
無いのにどうして分かったんですか!
どうして戻り値を受け取らないのにちゃんと計算できたのがとても不思議なんですけれど。


108 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 05:12:39 ]
戻り値は除算演算子が「受け取っている」

109 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 05:13:08 ]
何が戻値を「受け取ってない」んだい

110 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 05:13:11 ]
二項演算子の意味をちゃんと調べてみ。

111 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 05:13:18 ]
>>103
戻り値は受け取らなくてもいい

sqrt(10);
という文だけでもエラーにならない

返却される数値がdoubleならば数字を直接かくのと同じ

2.5 * 8

という計算は

x=2.5 ; y= 8;
x * y としなくても計算できる

112 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:23:00 ]
>>107
君が何を不思議がっているのかとても不思議なんですけど

113 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:28:44 ]
>>103
>sqrt((26 * 23 - 5 * 5) * (26 * 6 - 7 * 10)がこの式の計算結果そのもののよう
その通り
ちゃんと分かってんじゃん

114 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:28:51 ]
そもそも
a = func(5);
で、aに代入できるのは、右辺が値を持ってることを推測できそうなものだけど

115 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:30:02 ]
あ、日本語になってねぇorz



116 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:30:42 ]
>>114
きっと、
変数名=関数名(引数);
て形自体が一つの構文だと思ってるんだろうな
戻り値を受け取る構文

117 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:34:31 ]
>>93

数学で、

hoge = (26 × 176 - 25 × 24) / √((26 × 23 - 5 × 5) × (26 × 6 - 7 × 10))

と書いても、計算の仕方のルールがあるから、正しい結果を出せるでしょ。
それと同じで、sqrt()を先に計算して、その戻り値を使って / を計算するルールがあるから。


118 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:36:06 ]
int func(int z) { return z * 2; }
a = 8 + func(5);
って文があるとコンパイラは
a = 8 + 10;
a = 18;
って感じで処理する

119 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 08:43:37 ]
断定口調かよ

120 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 09:00:02 ]
ディレクトリ構造をメモリに保存するにはどうしたらいいですか?
ファイルに連番を付けてファイルのはパスがわかるようにしたいです

121 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 09:01:47 ]
多分木がいいとおもうのですが簡潔な方法有りますか

122 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 09:45:50 ]
>>120-121 とりあえず自分でやれよ。具体的にわかんないところがあったら相談してもいいからさ。

123 名前:デフォルトの名無しさん [2007/12/10(月) 09:46:43 ]
前スレの一人用チャットです。
┌──┐
│   │←出力用子ウィンドウ    入力ウィンドウに文字を打ち、エンターキーが押されたら
└──┘                  出力ウィンドウに文字が表示されるようにしたい。
┌──┐←入力用子ウィンドウ
└──┘
ソースttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5461.txt

winspectorでチェックしたところ、そもそもエンターキーが押された信号が出ていなかったので、
子ウィンドウのウィンドウプロシージャも作ったんですが、今度は入力用子ウィンドウが表示されなくなりました。

プログラムを開始してすぐにエンターキーを押すとメッセージボックスが出るので、入力用子ウィンドウ自体は
どこかに作られていると思うんですが、自分の設置した場所には見当たりません。
猫でも〜を読んでもどこが間違っているのか分からないんですが、どうしたら子ウィンドウが表示されますか。

あと、まだ中身を作っていないのに、GUI?だけでやたら手こずってるんですが、こんなもんですか?

124 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 09:50:44 ]
特警しか思い出せなかった orz

125 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 10:27:15 ]
動的確保の変数って

int *n=new int;
と定義するんですか?
なんかいつも*nとして使えなくて不便なんですが
配列の場合は静的と同じですが なんとかなりますか



126 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 10:33:35 ]
>>123 C/C++でGUIはめんどい。そんなもん。

>>125
それであってる。deleteを忘れるなよ。
最後の行がよくわからない。

127 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 10:37:26 ]
int a[10]; としたものとint *a=new int [10];
の使い方は同じなのに
変数だと違います

128 名前:デフォルトの名無しさん [2007/12/10(月) 10:48:13 ]
>>123
SetWindowLongをやめればとりあえず表示された

129 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 10:57:45 ]
>>123
130行目の引数がおかしいお
エディットコントロールのデフォルトウィンドウプロシージャが呼ばれてない

130 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 10:58:54 ]
int **p; としたとき
p[100]は、領域確保しなくてもつねにアクセスできますか?
アドレスの配列を作りたいのですが


131 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 11:01:28 ]
これはエラーになります どうすればいいですか?
int **p,n=100;
p[10000]=&n;
cout<<*p[10000];

132 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 11:03:56 ]
これはエラーになりません ポインタ配列も動的確保などしないと使えませんか?

int* *p= new int* [20000];
int n=100;
p[10000]=&n;
cout<<*p[10000];


133 名前:123 mailto:sage [2007/12/10(月) 11:04:25 ]
>>129
うあああああ!!DefProcにしたらできました!!
ありがとうございます!!

134 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 11:15:44 ]
多分木構造出来ましたよ

#include <iostream>
#include <string>
#include <vector>
using namespace std;

class tree{ public: string data; vector< tree* > p; };

tree* create(string data){
tree *node=new tree; node->data=data; return node; }

void insert(tree *node, string data ){
node->p.push_back( create(data) );}

135 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 12:08:55 ]
自分のIPアドレスを取得するにはどうしたらいいのでしょうか?
C言語、Windowsでお願いします。



136 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 12:30:48 ]
>>135
ipconfia

137 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 13:28:58 ]
複数のIP持ってる場合もあるしなあ

138 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 13:31:42 ]
NICを全部あげるんだ

139 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 13:32:17 ]
>>135
gethostbyname("")で取得

ipconfigの結果を解析

140 名前:135 mailto:sage [2007/12/10(月) 13:44:23 ]
プログラムの中でipconfigを実行するにはどのようにすれば
いいのでしょうか?
参考になるようなサイトを教えていただけると嬉しいです。

141 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 13:56:44 ]
system()
CreateProcess()
あとはパイプとか適当にぐぐれ

142 名前:135 mailto:sage [2007/12/10(月) 14:03:05 ]
>>141
ありがとうございます。
早速調べてみます

143 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 14:29:09 ]
>>131-132
int *a;
ポインタはアドレスを入れるための変数と考えるんだ。

int *a[100];
ポインタ配列は、アドレスを入れるための変数からなる配列

int **a;
ポインタのポインタは、ややこしいが
(アドレスを入れるための変数の)アドレスを入れるための変数

きちんと整理して理解しておいた方が良いよ。

144 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 20:15:27 ]
クラスのコンストラクタ呼び出しや初期化リスト以外で、変数を
int x(0); のように初期化するのってキモイですか?

145 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 20:35:11 ]
かなり初歩的な質問だけど、ボタンのCaptionをプログラム内で変えるのってどうやるの?



146 名前:デフォルトの名無しさん mailto:sage [2007/12/10(月) 21:12:53 ]
SetWindowText()
Win32APIスレへ

147 名前:デフォルトの名無しさん [2007/12/10(月) 22:41:06 ]
unsigned long a ,b;
int N;
とします。
Nは大きいです。


printf(" time=%f[s]\n", (a-b)/N);
 だとうまく表示されるんですが、

cout<<"time= "<<(a-b)/N<<"\n";だと0になってしまいます。

coutを使って書きたいのでアドバイスお願いします






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<246KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef