[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 04/16 00:16 / Filesize : 71 KB / Number-of Response : 322
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

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



1 名前:デフォルトの名無しさん mailto:sage [2014/03/25(火) 00:45:54.57 ID:VoemgV7u]
エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。
※sage禁止です(と代々スレに書いてありますが自己判断で)。

【前スレ】
【初心者歓迎】C/C++室 Ver.89【環境依存OK】
toro.2ch.net/test/read.cgi/tech/1390171944/
◆ソースのインデントについて
半角空白やTABでのインデントはスレに貼ると無くなります。
そのため、アップローダーに上げるのも手ですが直接貼る場合は、
全角空白か に置換すると見栄えだけはよくなります。

【アップローダー】(質問が長い時はココ使うと便利)
codepad.org/ (コンパイルもできるし出力結果も得られる[]privateをチェック)
ideone.com/ (時間帯によってはcodepadが重い事があるのでここも利用)

hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。

101 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 16:48:02.82 ID:nM83ZP3Z]
AfxBeginThreadはある関数を新しいスレッドで開始するだけだから、
parallel forみたいなことをしたい場合は、
自分で各スレッドのforの範囲を決めたり、
スレッドが終了するのを自分で待ったりする必要がある。

ネイティブで使えるパラレルライブラリはちゃんと入っているから探すべし。

102 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 19:59:43.18 ID:ZtsQOPBg]
マルチコアまともに扱いたいならMFCなんか使わんやろ

103 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 20:06:44.55 ID:2QttofMo]
OpenMPは楽して並列化させたい場合に威力を発揮するな
……OpenACCが使えるCompilerってフリーに無かったっけ?

104 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 20:41:28.03 ID:DD5EG69p]
マルチコアを真面目に使いたいときに
GUIフレームワークをわざわざ変える奴は
マトモな設計が出来ない奴

105 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 20:43:23.33 ID:eu/rYsXw]
MFC関係ないよね

106 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 20:59:32.67 ID:UDPO/kAP]
儂もそう思う。が、未だに世に知られていない新理論を
構築済みなのかも知れないのでもう少し語らせてみたいです。

107 名前:デフォルトの名無しさん mailto:sage [2014/04/04(金) 23:36:48.04 ID:QN8rMztS]
>>101
OpenMPとかPPLとかBoostとかいろいろあるんだな
調べてみるよありがとう

108 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 00:52:05.63 ID:Z9uNYFZQ]
char なら printf
w_char なら wprintf
TCHAR なら _tprintf
だと思うのですが、どうして三番目のやつは先頭に _ が付くのでしょうか?

109 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 00:56:55.10 ID:JxLvhIna]
マクロって_MAX_PATHとか付くやん



110 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 01:50:54.62 ID:EG+AV0eK]
標準規格にはないWindows用の独自拡張だから

111 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 02:16:53.63 ID:goifYp5b]
コンパイラメーカーや、ライブラリの作者は、_を多用します
プログラマは、先頭に、_をつかわないようにします(おれは、そういわれた)

112 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 02:21:01.16 ID:zHyV6h3a]
>>111
俺もC言語辞典(古い)でそれ見た

113 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 02:47:32.13 ID:oiRFlfhh]
>>100だけど、とりあえず何もしないループ回してCPU使用率見たら、特にマルチスレッド処理してないのに複数コアが仕事してるみたいだった。
マルチスレッドを意識してプログラムしなくてもwindows8は賢いからある程度勝手に対応してくれるのか?
かといって全コアが100%に張り付くというわけでもなく、60%弱くらいでよくわからん。

これを回しただけなんだけど
for (int j = 0; j < 100000; j++){
for (int i = 0; i < 100000; i++){}
}

114 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 03:30:05.84 ID:zHyV6h3a]
>>113
空ループって最適化したら消えるんじゃねーの?
それ以前に裏で別のプロセス走ってるとか
コンパイラの自動並列化が効いちゃったとかのオチな気がする

115 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 03:59:45.28 ID:JxLvhIna]
>>113
1コアの100% =
2コアの50% =
4コアの25%

116 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 04:09:44.16 ID:4p3tjfYN]
よくわからないがシングルスレッド高負荷処理で
同一コアと思われるハイパースレッディングの
論理CPUペアが50%ずつ(たまに60+40の非対称)
になるのはWindowsでよくあること。
表示が間違ってるのではないかと思ってるけど

117 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 11:56:14.14 ID:oiRFlfhh]
コンパイラの自動並列化がそれっぽい、便利なんだな
もっと詳しくならないとマルチコアとか考えるだけ無駄ってことか……

118 名前:デフォルトの名無しさん [2014/04/05(土) 12:06:18.53 ID:Vwyio/wC]
マルチコアとマルチスレッドはべつ。
シングルスレッド・プログラムでも、OSがマルチコア使うかもしれないし
マルチスレッド・プログラムでも、OSが1コアしか使わないかもしれない。
プログラマが出来るのは主にスレッド管理だけ。

119 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 12:07:27.06 ID:zHyV6h3a]
>>117
msdn.microsoft.com/ja-jp/library/hh872235.aspx



120 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 12:10:33.92 ID:Vra9QIvI]
にほんごでおk

121 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 12:59:48.48 ID:zqI4wR1v]
>>113
「マルチスレッドにすると勝手にコアごとに割り付けてくれる」ってのは正しい
正確には割り付けるんじゃなく、並列に実行される。

CPU使用率は、ツールやコマンドによって計算方法が違っている場合がある。
例えば4コアの場合、全CPUをフルで使った場合100%と表示するか、400%と表示するかはツール次第。

122 名前:デフォルトの名無しさん [2014/04/05(土) 13:32:33.53 ID:Gtcr4gqx]
構造体を動的に生成したいのですが、このやりかたでよろしいでしょうか?
ideone.com/Yr4XRf

123 名前:片山博文MZジェバンニ ◆T6xkBnTXz7B0 mailto:sage [2014/04/05(土) 13:35:36.03 ID:pKk9GxNe]
>>122
型名の始めは大文字にしたほうがいいね。

124 名前:デフォルトの名無しさん [2014/04/05(土) 13:38:16.05 ID:Gtcr4gqx]
>>123
そうですね^^

型名以外には何か問題点とかありますか?

125 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 13:38:47.30 ID:NnouwwX7]
はい

126 名前:デフォルトの名無しさん [2014/04/05(土) 13:39:59.09 ID:Gtcr4gqx]
>>125
具体的にはどのような?

127 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 13:42:36.52 ID:30x58bFF]
このやりかたでよろしいでしょうか?
はい
後何が必要なのか?

128 名前:デフォルトの名無しさん [2014/04/05(土) 13:44:42.90 ID:Gtcr4gqx]
>>127
ポインタの扱いが苦手でして
一応コンパイラもエラー吐かなかったので大丈夫みたいですがなにぶん心配性なもんで・・・

129 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 13:50:24.60 ID:/rC4NDRr]
>>128
で?



130 名前:片山博文MZジェバンニ ◆T6xkBnTXz7B0 mailto:sage [2014/04/05(土) 14:03:30.11 ID:pKk9GxNe]
>>129
次のコード書いてみて。

131 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 15:18:00.60 ID:N2+78ftB]
>>108
願望

132 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 15:21:03.39 ID:zHyV6h3a]
>>122
そもそも構造体のメンバ変数が1つだけって……
動的確保してるのにその個数が定数値って……

例:codepad.org/l9spLfkF

133 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 15:22:25.93 ID:zHyV6h3a]
おっとfreeを忘れてた……
codepad.org/3ZiOa4oN

134 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 15:23:25.39 ID:JxLvhIna]
>>132
例だから別にいいだろ

135 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 15:53:12.52 ID:Vra9QIvI]
ライブラリとかで予め決まっている名前以外は _ をつけるべきじゃない

typedef struct 〜 の書式で宣言するなら struct の後のタグ名は不要
おまじない気分でつけるものじゃない

何よりまず、obj001からobj002にコピーしている意味がわからない
この後 obj002を使おうとしていますというオチじゃないかと非常に気持ち悪い

136 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 15:55:30.71 ID:Vra9QIvI]
×ライブラリとかで予め決まっている名前以外は _ をつけるべきじゃない
○ライブラリとかで予め決まっている名前以外は 先頭に _ をつけるべきじゃない

137 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 15:55:38.93 ID:PXTTIzjC]
> 何よりまず、obj001からobj002にコピーしている意味がわからない

いや、その点はどうでもいだろw
ポインタの勉強するときそういう代入してみるのってよくあることだろ。

138 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 16:15:50.31 ID:JxLvhIna]
本題以外にケチつける奴はただ優越感に浸りたいだけ
浸れてないけど

139 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 16:21:18.84 ID:LokGB3M7]
×ライブラリとかで予め決まっている名前以外は 先頭に _ をつけるべきじゃない
○ライブラリとかで予め決まっている名前以外は 先頭に _ をつけるべきじゃない、というのが持論です



140 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 17:03:41.01 ID:Vra9QIvI]
改めて見直してみたらいろいろな慣習とか規約があるみたいだな
よし、今日のところは引き分けにしておいてやる

141 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 17:55:33.89 ID:YrLzJmoN]
sprt使わずにdistance名乗るか

142 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 18:38:06.46 ID:zqI4wR1v]
>>123
え?なんで型名を大文字で始めるの
定数と間違えてない?

143 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 19:04:31.24 ID:zHyV6h3a]
>>141
実用上はいちいちsqrtしないだろ?

……ごめんなさい忘れてただけです

144 名前:片山博文MZジェバンニ ◆T6xkBnTXz7B0 [2014/04/05(土) 19:22:03.80 ID:kCbCwa1D]
>>142
例えばDogという型名とdogという変数名が衝突しないから、分かりやすいコードが書ける。

145 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 19:35:59.53 ID:zqI4wR1v]
>>144
うん。そうです。自分が勘違いしていました・・・

146 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 22:27:29.57 ID:pxBAHja5]
型名と変数名が衝突しないルールなどこの世に無数にあるのに、
自分の使ってるルールがさも普遍的に良いものであるかのような
ミスリードをする奴の言うことなど真に受けてはいけない

147 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 22:45:29.81 ID:JxLvhIna]
char cszBuff
TCHAR tszBuff
int nCount
UINT unCount

typedef struct tagStructName{
} T_STRUCTNAME;

いろいろやってみて自分が納得行くの使ったらいいんや

148 名前:デフォルトの名無しさん mailto:sage [2014/04/05(土) 23:56:57.72 ID:d+kzfy0R]
>>147
システムハンガリアンさんちーす
まだ絶滅してなかったんすね!
頑張ってくださいね!

149 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 03:16:28.05 ID:PoyortF4]
> 型名と変数名が衝突しないルールなどこの世に無数にあるのに、

ルール以前に、文法で型名と集成体タグ名と変数名は衝突し得ないんじゃね?
ideone.com/srhSui

あと、typedefされた型名って_tってサフィックスつけるのが一般的だと思うんだけど
これもローカルなルールなんやろか



150 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 03:33:10.66 ID:v5F7vKVc]
>>149
そのとおりだねえ
ISO/IEC 9899:1999 6.2.1p1
An identifier can denote an object; a function; a tag or a member of a structure, union, or
enumeration; a typedef name; a label name; a macro name; or a macro parameter.

集成体タグと typedef 名と変数は異なる名前空間だね

151 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 03:39:44.68 ID:lcQBK2Mz]
>>149
en.wikipedia.org/wiki/Typedef
によると、POSIXでは _t サフィックスは typedef の名前にリザーブされていて、それゆえ
名前が衝突しないようにユーザが定義する typedef には _t を使わないほうがいいらしい

152 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 03:53:44.87 ID:PoyortF4]
>>150
規約での確認、dです

>>151
> Such type names are reserved by POSIX for future extensions and should generally be avoided for user defined types.
…マジっすか orz

153 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 04:43:31.25 ID:7TI60JXf]
衝突ってのはコンパイルエラーではなくて
人が目で見て区別がつきやすいよう
同じ綴りを避けるって話だろうに
アスペなおまいらは

154 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 07:44:06.37 ID:AUPUS+0I]
>>153
人の目で区別する必要があるシチュエーションってどんなの?

155 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 11:01:21.41 ID:Gd53X1PX]
>>153
よほど糞な開発環境なんだなお前

156 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 11:52:04.47 ID:gdJCg3c2]
あえて言おう
処理系指定で組めばおk
初心者なんだろ、何か組みあがった快感って大事だぞ

157 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 12:09:44.18 ID:BmjYK//+]
別のものには違う名前を使うもので
名前を使い回すなって当たり前のことだろ
どんだけ馬鹿なんだおまえら

158 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 12:18:02.39 ID:PoyortF4]
流れぶったぎりでスマソ
_tサフィックスのことは、下にも書かれてたよorz
ttp://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_02_02

159 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 13:36:30.63 ID:9b0FkJFr]
>Such type names are reserved by POSIX

本当にWikiは嘘だらけだな
byだと適用範囲がPOSIXでなくC全般と読めてしまう



160 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 15:47:59.42 ID:PoyortF4]
byよりinの方が良いかもね…スレチだけど

161 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 16:35:16.36 ID:5rOAt6qX]
>>159-160
Wikiなんだから編集できるんじゃねーの?

162 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 16:39:48.19 ID:Pw+vYT2x]
A「こんな説明みつけたよ!
B「間違ってるねそれ。
 やっぱりWikipediaはこらだから
A「直せるんだから直せよ
B「えっ、何で俺が?
A「えっ?

163 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 16:46:07.08 ID:YqB/fCSo]
byの方がいいだろ

164 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 16:56:24.24 ID:k991ba7o]
A「byだとPOSIX以外にもルールが適用されると読める
B「byの方がいいだろ

せめて意見するときは
そう考える根拠ぐらい書きたいものだ

165 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 16:57:56.33 ID:PoyortF4]
byの方が良いのかorz
Wiki編集するところだったよorz

166 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:15:29.97 ID:X8q2hYwd]
そもそもその後の for 以下を読めば C 全般に適用とかの変な解釈するわけないと思うんだが...

167 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:22:56.79 ID:714kpsax]
>Such type names are reserved by POSIX for future extensions and should generally be avoided for user defined types.

POSIXによって予約されているため
ユーザー定義型での使用は避けるべきである

POSIX準拠システムでのアプリケーションプログラムを超えて
POSIXと関係ないオペレーティングシステムのアプリケーションにまで言及しとりますがな

168 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:41:42.06 ID:YqB/fCSo]
避けるべきということに変わりはないだろ
お前は移植性の事全く考えないの?
POSIXでないシステムの方が圧倒的に少ないというのに

169 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:47:23.97 ID:X8q2hYwd]
で、どこに C 全般とか書いてあるんだ?



170 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:54:26.32 ID:PoyortF4]
>>167
"by ISO/IEC"でなく"by POSIX"という時点でお察し(ry

171 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:56:17.95 ID:k991ba7o]
なんでこんなに揉めるんだ?
Cのtypedefの説明に「_tはPOSIXで予約済」
って書いてあったら
POSIX系以外も従う必用性がある
ように読めるだろ。

>避けるべきということに変わりはないだろ
それは書いた人の主観であって
百科事典の説明に書くべきじゃないぞ。
技術文書書いたこと無いの?

172 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:58:14.20 ID:k991ba7o]
「POSIXではオペレーティングシステムの為に予約」
という表現にすれば問題なくなると思うのだが

173 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 19:59:31.29 ID:14wt57ia]
>>158
いっぱいあるんだな……

174 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:13:54.33 ID:IsEOtgMD]
_t はタグのtなのかtypedefのtなのかどっちですか?

175 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:16:44.81 ID:YqB/fCSo]
>>171
読めないよ
俺C言語で新しいOS書いたわー
そのOSでは大文字で始まる型名予約してるから使うなよ!って書いて、誰がC言語全般に影響あると思うんだ?

176 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:22:32.03 ID:YqB/fCSo]
POSIXが何かわかってるやつはC言語全般に影響が〜なんて誤解しない。
POSIXが何かわかってない奴は(圧倒的多数であるPOSIXシステムで動かされる可能性を考慮して)無条件に従っておいた方がいい

なんの問題もない。

177 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:22:37.76 ID:ZIQhn8PO]
Wikipediaの内容についての議論はWikipediaのTalkページでやれよ

178 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:24:58.76 ID:X8q2hYwd]
>>171
> なんでこんなに揉めるんだ?

単なるしきたりを

> POSIX系以外も従う必用性がある
> ように読めるだろ。

なんて言うアホがいるからだろ。

179 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:29:09.78 ID:k991ba7o]
>>178
説明の文面が妥当かどうかの話をするときに
どうしてシキタリが出てくるんだよアホですか?



180 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:30:38.36 ID:8z3KlCR7]
もうここで議論するべき内容ではないどっか行け

181 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:34:13.86 ID:X8q2hYwd]
convention も読めないアホは口挟むなよ (w

182 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:36:21.69 ID:PoyortF4]
なかなか面白かった

>>174
型名(type name)のtらしい…俺はtypedefのtって思い込んでたけど
ttp://stackoverflow.com/questions/231760/what-does-a-type-followed-by-t-underscore-t-represent

183 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:44:57.82 ID:k991ba7o]
>>181
「Cのsize_t(しきたりでtypedefには_tを付けたもの)は
 POSIXによって予約されている」
などと言っている出鱈目なWikipediaの説明が
妥当だと思うアホはすっこんでろ

184 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:57:23.37 ID:6fUxN2Jx]
All rights are reserved by POSIX.

185 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 20:57:26.93 ID:X8q2hYwd]
>>183
誰が妥当って言ってるんだ?
俺は単にそう書いてると言ってるだけだぞ。

まあ、しきたりで自爆したからごまかしたいんだろうけど (w

186 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 21:05:47.20 ID:frwmbROr]
NG推奨ワード:
Qz
STL
ヘッダ
POSIX ←new
片山
hoge

187 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 21:23:14.93 ID:YqB/fCSo]
CがNGワードになる日も近いな

188 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 21:28:22.80 ID:5rOAt6qX]
>>186
え、いつの間にかSTLとヘッダもアウトになってたのかw
ここは酷いインターネッツですね

189 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 21:39:32.30 ID:uqLF0x8H]
>>186
ついでに
スレが荒れるのでCやC++に関することはすべて厳禁



190 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 21:52:35.54 ID:EzHv0eI8]
まどろっこしいな
ようは2ちゃんねるの禁止が落としどころだよね

191 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 22:19:16.09 ID:2m7iHXEE]
p2使えないから2ch廃止でいいよもう
出先で書き込めなくてもどかしいったらありゃしない

192 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 22:35:34.44 ID:yUhKfMaZ]
●は使えるだろ
●が無いとスレ立てできない

193 名前:デフォルトの名無しさん mailto:sage [2014/04/06(日) 23:14:43.66 ID:2m7iHXEE]
浪人ってやつ?
買う気ないからひろゆきの新しい方に期待するわ

194 名前:デフォルトの名無しさん mailto:sage [2014/04/07(月) 01:28:14.02 ID:AB68SSs6]
SYSTEMTIMEの引き算をしたくて
stackoverflow.com/questions/8699069/difference-between-two-systemtime-variable
の回答4にある
SYSTEMTIME operator-(const SYSTEMTIME& pSr,const SYSTEMTIME& pSl)
をそのまま使って、

SYSTEMTIME ts,te,tdif;
GetSystemTime(&ts);
Sleep(1000);
GetSystemTime(&te);
tdif = te - ts;

としたら、最後の引き算の行で、
エラー 1 error C2676: 二項演算子 '-' : 'SYSTEMTIME' は、この演算子または定義済の演算子に適切な型への変換の定義を行いません。(新しい動作; ヘルプを参照)

と出るのですが、解決方法がわかりません。どうしたらよいでしょうか?

195 名前:デフォルトの名無しさん mailto:sage [2014/04/07(月) 02:54:37.57 ID:LXdO3Noc]
>>194
teのアドレス - tsのアドレスをtdifに入れるというおかしな事してる

196 名前:デフォルトの名無しさん mailto:sage [2014/04/07(月) 04:02:36.25 ID:Yfheg34z]
>>194
operator-()の定義かプロトタイプ宣言を
WinMain()だかtmain()だかの前でやれば解決する、と予想

197 名前:デフォルトの名無しさん mailto:sage [2014/04/07(月) 04:21:05.28 ID:AB68SSs6]
皆さん
アドバイスありがとうございました。
>>196
その通りでした。プロトタイプ宣言忘れていました。
無事に動いたのですが、実行結果がおかしいのです。
約1秒の差が計測できると思ったのですが、
tdifの中身を見ると、
wYear 1601 unsigned short
wMonth 1 unsigned short
wDayOfWeek 1 unsigned short
wDay 1 unsigned short
wHour 0 unsigned short
wMinute 0 unsigned short
wSecond 1 unsigned short
wMilliseconds 515 unsigned short
となっていますので

1601年1月1日0時間0分1.515秒
の差ということでしょうか?どういうことでしょうか?

198 名前:デフォルトの名無しさん mailto:sage [2014/04/07(月) 04:29:51.17 ID:Yfheg34z]
>>197
ttp://msdn.microsoft.com/ja-jp/library/x3399a54.aspx

199 名前:デフォルトの名無しさん mailto:sage [2014/04/07(月) 06:08:42.83 ID:NjqqbTFI]
>>197
SYSTEMTIME ってカレンダーの年月日時間みたいなもの。
それらの引き算をカレンダーの年月日時間にするってへんだろ。
結果のカレンダー年月日時間は0年0月0日0時0分1.515秒ですって、カレンダーではありえないだろ
期待する結果は年月日時間で表せる差じゃないか(1年2ヶ月3時間4分5秒違うとか)



200 名前:デフォルトの名無しさん mailto:sage [2014/04/07(月) 11:35:54.05 ID:uM+gajuN]
>>197
SYSTEMTIMEの起点は1601年1月1日0時0分0秒
つまり、ゼロをSYSTEMTIMEとして解釈すると「1601/01/01 0:00:00」になる






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

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

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