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


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

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



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

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

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

147 名前:デフォルトの名無しさん mailto:sage [2014/08/09(土) 16:26:58.59 ID:kN50ePbr]
>>140
思考停止して固定長だと思い込んでたことを指摘された気持ちはいかがですか?

148 名前:デフォルトの名無しさん mailto:sage [2014/08/09(土) 18:56:27.64 ID:ogb0Lg1q]
入力された段階でサロゲートペアを弾けばあとは固定長で扱えるから楽だな

149 名前:デフォルトの名無しさん mailto:sage [2014/08/09(土) 22:23:42.91 ID:XnzTvHrT]
>>143
なんか、わらったよ。

おまえらはsize_t 、wchar_tってなんて読んでいる?
サイズテー、だぶりゅーチャーてー?

150 名前:デフォルトの名無しさん mailto:sage [2014/08/09(土) 22:26:34.63 ID:MOaw4cY+]
さいずてぃー
うちゃーてぃー

151 名前:デフォルトの名無しさん mailto:sage [2014/08/09(土) 23:01:51.78 ID:aGEftFoO]
「ティー」じゃなくて「テー」って言う所に老いを感じる

152 名前:デフォルトの名無しさん mailto:sage [2014/08/09(土) 23:19:07.91 ID:Vxx37Jb0]
いやテーはともかく後は普通の読みなんじゃ

153 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 03:00:14.18 ID:/shRHOr1]
>>151
聞き間違いを避ける為にあえてそう発音する人もいるらしい

154 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 03:44:09.58 ID:eHhQsmny]
B ビー
D デー
みたいなもんだな

charのポは半角の|と被るとかあるから
wchar_tに変換してからのがいい

155 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 06:49:28.06 ID:9YqDJ7QI]
>>154
char=MS932として話されても



156 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 06:57:04.45 ID:9YqDJ7QI]
ここって環境依存OKなんじゃなくて、一つの環境しか知らない人が多いだけだな。

157 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 07:20:18.40 ID:eHhQsmny]
「とか」って書いてんのに突っ込まれても

158 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 08:43:19.26 ID:YKEPe6r6]
>>107
なるほど。C++でエクスポートされる関数名が暗号化みたいにされるのは
「マングリング」と呼ぶのですね。ありがとうございます。

やはり素の名前で関数・変数やclassをエクスポートしたければ
.DEF使うべきですね。

159 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 11:31:57.69 ID:qvEZGcVl]
>>151
ドイツ語読みじゃ、霧

160 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 12:05:22.40 ID:lKd2tZDO]
ドイツ語読みでキャラテー?w

161 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 22:50:54.62 ID:qjKPAjiz]
今、数値を計算しファイルに出力するプログラムを作っています

162 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 23:01:10.90 ID:YfIekyq6]
>>160
学生か?

163 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 23:21:57.97 ID:qjKPAjiz]
>>161です
途中で切れていました

今、数値を計算しファイルに出力するプログラムを作っています
計算過程に -3/2乗が出てくるのですが、どう書くのが一番良いのでしょうか?

あと、計算結果が少数で出てきます
fixedで小数点以下6桁まで出せますが、さらに制度を上げることは可能ですか?
また、精度は少数を文字で出力するかバイナリで出力するかによって変わりますか?

164 名前:デフォルトの名無しさん mailto:sage [2014/08/10(日) 23:32:40.91 ID:vHA1jMYS]
有理数計算ライブラリを使えば?

165 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 00:56:37.77 ID:IThaQfUx]
>>164
おすすめのライブラリはありますか?



166 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 02:32:28.41 ID:HrAPsGYd]
>>163
x^(-3/2)ならpow(x, -3/2)

167 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 02:35:49.60 ID:vtRcS5Vo]
惜しい
pow(x, -1.5)やpow(x, -3/2.0)が正解。
整数どうしの除算は整数に切り捨てられる

168 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 03:30:31.58 ID:HrAPsGYd]
>>167
xが型がdouble,floatなら問題無い

169 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 03:43:55.13 ID:LBc4eQ0i]
>>168
ideone.com/hexYNp
> 2.000000 ^ (-3/2 ) = 0.500000
> 2.000000 ^ (-3/2.0) = 0.353553

170 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 05:25:45.52 ID:zN3pWoAl]
>整数どうしの除算は整数に切り捨てられる

そういやC++は2011年改訂でそうなったな

171 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 07:43:57.75 ID:OcxdK7AV]
> そういやC++は2011年改訂でそうなったな
ええぇ〜〜〜〜 なんだってぇ〜〜〜〜

172 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 08:06:18.35 ID:xvvy75By]
整数リテラルどおしの除算の結果は整数に切り捨てられるのは
Cからの流れでC++の起こりの段階からそうじゃなかったのけ?

173 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 08:20:28.49 ID:63aliZJh]
この類いの奴は、負数の割り算で余りの符号が定義されたぐらいしか知らんわ

174 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 10:03:38.34 ID:IpMoPrzW]
整数リテラルの除算の結果は(規約がどうかは兎も角)事の起こりからずっと切り捨てられてきたね。
切り捨ての方向が確定したのはC++11かもしれないが。

>>163
doubleの精度のままファイルに出力するには、幾つか手がある。
・(エンディアンを考慮する必要があり、IEEEであることが前提になるが)バイナリで出力。
・有効精度を充分大きく採った指数形式で出力("%.20g"くらいで運が悪くない限り大丈夫)。
・(利用側で演算する制約はあるが)計算結果ではなく、計算過程を出力。

175 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 11:20:26.59 ID:GA9i869X]
昔MS-DOS時代に「ポータブルなdoubleの保存を
標準Cの範囲で実現するコード(基数は2限定)」というのを見たな。
ソースを見たけど「こんなことするくらいなら環境依存でいいや」
と思った記憶がある



176 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 11:49:09.33 ID:IThaQfUx]
>>166
>>167
ありがとうございます

>>174
ありがとうございます、二番目の方法が良さそうなので採用させてもらいます

177 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 21:47:42.55 ID:IThaQfUx]
%.20gを使ってもdoubleに20桁を格納出来ないので最高15桁のようですね。
15桁もあれば十分ですが

178 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 23:32:08.05 ID:A+39Zpbs]
ちら裏だけど
素粒子や半導体関係で、18桁要求されたことがあったなあ
C#のdecimalが欲しかった

179 名前:デフォルトの名無しさん mailto:sage [2014/08/11(月) 23:51:43.06 ID:9WMqh+ch]
>>178
x86の浮動小数点演算は80bitで精度が約19桁だから余裕だろ

180 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 00:33:05.70 ID:pMraHo9U]
>>179
x87よりSSEの方が速い。でも64ビット。

181 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 01:49:42.79 ID:TnGKLUiy]
ベクターをベクターのまま何処か(HDDなど)に保存することは出来ますか?

182 名前:デフォルトの名無しさん [2014/08/12(火) 02:07:55.52 ID:IbGC0kFi]
シリアライズするといい

183 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 04:39:03.48 ID:r1RLL3ei]
>>178
decimalの存在意義を理解してないおまえには無理

>>179
>x86の浮動小数点演算は80bitで
ばーか、ばーか

184 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 05:08:54.18 ID:FpmNu2on]
>>180

185 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 05:12:55.50 ID:qXgriP/E]
>>181
できません



186 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 07:15:05.97 ID:pMraHo9U]
>>184 ????????????????

187 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 08:59:35.37 ID:NDNq9sGA]
>>181
boost::serialization使え

188 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 11:15:17.65 ID:rw+rZn9f]
.NET4.5ならBigIntegerクラスがあるじゃん

189 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 13:00:10.27 ID:utQRXpD1]
正数と実数の区別がついていない188には無理

190 名前:デフォルトの名無しさん mailto:sage [2014/08/12(火) 20:03:37.07 ID:N66cEg2t]
>>182
>>187
ありがとう
シリアライズ一度調べてみます

191 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 00:13:50.77 ID:+ie/z7le]
このコードがどういう考えで動作しているのかさっぱり解読できない
誰かなぜこれで動作してるのか解説してほしい
問題:ttp://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0036
回答:ttp://judge.u-aizu.ac.jp/onlinejudge/review.jsp?rid=122035

最初は判定用の回答をそのまま出力しているだけかと思ったけど
自分で入力を与えても正しく出力することは確認済み

192 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 00:25:30.02 ID:+ie/z7le]
ちなみにできるだけ読めるように展開していっている途中のコードは以下
ideone.com/NO0rOd

193 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 01:06:08.42 ID:La+C0YSw]
>>191
最初に '1' が出現してからの続く 0 と 1 のパターンは、全部ばらばらだろ?
ここで、最初の '1' が出現すると i と n のカウントが始まって、
次に 1 が出現するまでの変化値が異なり、その積 i *= n も変わる。
すると、うまい具合に剰余でパターン別に別れる最小の値が % 11 ってわけよ。

194 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 01:13:55.33 ID:La+C0YSw]
puts(...) に int 型の変数のアドレスを渡している部分は解説いらないよね

195 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 02:04:34.81 ID:yUu6IlV+]
>>193
i *= n の積はやってないんじゃない? ||演算子の評価結果は 0 か 1 じゃなかったっけ?(処理系依存?)
だから、 i *= 0 か i *= 1 のどちらかにしかならない。
i *= 0 になるのは、初めて ‘1’ が出現して c%2==1 のとき n++ == 0 となって、i *= 1 || 0 となるとき。
このとき i は 0 にリセットされる。
最初の‘1’と最後の‘1’の位置の差が図形ごとに固定かつバラバラなので、i でその差分をカウントして判別してる。



196 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 05:59:28.24 ID:gYHJhUS8]
初心者以前の者ですがC系の言語って
if (x>=0){〜} //A
else if (x==5){〜} //B
else{〜} //C
という処理をする場合、x=5だった時Aの処理だけでBの処理は行われないって事でいいでしょうか?
C系とまとめてますが、CとC++じゃ全然違ーよ!って感じでしたらすいません

197 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 06:09:41.88 ID:gAzc5rgf]
はい

198 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 06:14:16.74 ID:gYHJhUS8]
どうもありがとうございました

199 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 10:55:08.47 ID:Vw1Vsh7W]
ABC全部有効にしたいなら
if (x==5){〜} //B
else if (x>=0){〜} //A
else{〜} //C
という順で判定する

200 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 12:15:42.85 ID:+ie/z7le]
>>193,194
解説ありがとう!まだコードを理解しきってないですが
考え方がわかったので解読できそうです

実はputsのほうもさっきまでよくわかってなかったのですがint型と言われて気が付きました
(リトルエンディアン限定で?)1byte目に文字で2~4byte目が0になってるから
うまいこと2byte目が'\0'と読み取られるんですね
ありがとうございました

201 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 12:21:44.33 ID:+ie/z7le]
>>195
解説ありがとう!
まだコードとしては何が正しいか読めていませんが
参考になります!

202 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 18:08:43.16 ID:MVRQguVP]
C++11だっけ?
λとか可変長天ぷらが導入されたあたりからC++触ってないのだが
最近はなんか大きな動きあったの?

203 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 21:09:51.62 ID:oMecd0hy]
>>201
その内、FEED C0DE に出会える日もくるさ
0xBAADF00D かも知れないが

204 名前:デフォルトの名無しさん [2014/08/13(水) 21:32:31.42 ID:/Dr5wPv9]
配列コピーなんですけど、たとえば old_array[i]にある奇数や飛び番の配列データを
新たに作ったnew_array[i]に[0]から連番でいれていくのは可能でしょうか

205 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 21:43:51.95 ID:MVRQguVP]
>>204
可能ですよ



206 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 21:46:55.24 ID:u8W9agvo]
そういうコードを書けば良い

int i, j = 0;
for (i=0; i<[old_arrayの領域分]; i++) {
 if (old_array[i] == 条件) {
  new_array[j++] = old_array[i];
 }
}

207 名前:デフォルトの名無しさん [2014/08/13(水) 22:11:32.74 ID:/Dr5wPv9]
>>205-206
有難うです。ど素人なもんで
new_array[j++] = old_array[i]; この辺手掛かりにちょっといじってみます

208 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 22:12:32.13 ID:Vw1Vsh7W]
>>203
B16B00B5がいい

209 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 22:27:45.98 ID:yUu6IlV+]
>>195
誰も気にしてなさそうだけど、変なこと書いてたのでいまさら修正。
> i *= 0 になるのは、初めて ‘1’ が出現して c%2==1 のとき n++ == 0 となって、i *= 1 || 0 となるとき。
正しくは
 i *= 0 になるのは、初めて ‘1’ が出現して c%2==0 のとき n++ == 0 となって、i *= 0 || 0 となるとき。
ごめんニャン

210 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 23:22:53.17 ID:ZCR6FKbx]
二次元のvectorにプッシュバックしたいのですがどう書けば良いでしょうか?

また、vectorのサイズを初期化しておいてからvectorに数値を入れていくのと、プッシュバックで数値を入れいくのではどちらの方が効率的ですか?

211 名前:デフォルトの名無しさん [2014/08/13(水) 23:29:46.05 ID:o4SLtD2/]
無初期化でプッシュバックは遅い。
reserveしとけばメモリ動的確保・変更が連発されない。

212 名前:片山博文MZ次期CEO ◆T6xkBnTXz7B0 mailto:sage [2014/08/13(水) 23:43:02.05 ID:JOE/IwkU]
プッシュアップしたvectorをプッシュアップする

213 名前:デフォルトの名無しさん mailto:sage [2014/08/13(水) 23:57:45.27 ID:ZCR6FKbx]
>>211
ありがとうございます
reserveは初期化しない分速くなるというわけですね

>>212
>プッシュアップしたvectorをプッシュアップする
一回目のプッシュアップするvectorには名前がなく、プッシュアップの方法がわからないのですがどう書けば良いのでしょう?

214 名前:片山博文MZ次期CEO ◆T6xkBnTXz7B0 mailto:sage [2014/08/14(木) 00:13:18.26 ID:ZDq4sTlC]
vector<vector<int> > vv;
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
vv.push_back(v);
vv.push_back(v);
vv.push_back(v);

215 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 00:15:11.69 ID:Eelz7SYO]
プッシュアップってなんだ?

典型的な二次元構造の確保方法。
std::vector<std::vector<T> > array2d;
for (int iy = 0; iy < height; ++iy) {
std::vector<T> tmpArray;
for (int ix = 0; ix < width; ++ix) {
tmpArray.push_back(T(0));
}
array2d.push_back(tmpArray);
}
実際には、初期値が一定ならtmpArrayは事前に一回作るだけで済むんだけどね。



216 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 00:20:49.92 ID:inXgLCev]
>>213
vector<vector<int>> vec;
vec.push_back(vector<int>());
vec[0].push_back(123);

217 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 00:33:00.37 ID:KyBdqph/]
vector<vector<T> > array2d(height,vector<T>(width,T(0)));
普通はこんな感じだろ

push_backはサイズ未定な時かreserveと組み合わせて使う

でも多次元配列なら1次元vectorで作って
添字計算するのが基本じゃね?

218 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 00:36:12.24 ID:tezU5ZGa]
>vector<T>(width,T(0))

なんで一本グソのような無駄な配列を作って
わざわざそこからコピーして初期化すんだよ
無駄が大杉だろ

219 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 00:50:02.85 ID:ZDq4sTlC]
emplace_backの方が早いかもしれんな

220 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 00:56:21.81 ID:Pr8GjnEP]
char s[3];
のようにして、まだ初期化していない文字列の中身をデバッグ中に見ると、'フ'が入っていました。
てっきり初期化しなければ\0が入っているか、もしくは何が入っているか保証されないと思っていたのですが、'フ'とは何を表しているんでしょうか?

221 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 00:57:18.15 ID:KyBdqph/]
まあ、拘るならreserveしてemplaceか、なければswapだろうけど。

Tの生成やコピーが軽いなら
あれが一番楽じゃね。

それでも元のループより効率が悪くはならんし。

222 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 01:05:12.41 ID:ZDq4sTlC]
VC++がデバッグ時に初期化されていない領域を「フフフフフフフフフ」で埋める

223 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 01:08:37.01 ID:Pr8GjnEP]
なるほど、VC++の仕様なんですね。

224 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 01:11:32.12 ID:ZDq4sTlC]
フフフフフフフフフ

225 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 01:11:46.83 ID:KyBdqph/]
TがPODでvectorのコピーコンストラクタが
memcpy使うように特殊化されているような実装ならemplace使うより速いかもよ。



226 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 01:20:20.26 ID:7eQlac2v]
素直に書こうぜ。こうだろ。
std::vector<std::vector<T>> array2d(height);
for (auto&v : array2d) v.resize(width);

227 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 02:00:35.61 ID:BNqK6z00]
>>214
>>215
ありがとうございます
二重ループを使えばよかったのですね
どうして気づかなかったのか•••

>>216
>vector<vector<int>> vec;
>vec.push_back(vector<int>());
>vec[0].push_back(123);
なるほど、これはきれいですね
ありがとうございます、使わせてもらいます

228 名前:デフォルトの名無しさん [2014/08/14(木) 02:08:46.40 ID:BNqK6z00]
>>226
forの部分がよくわかりません
それは大きさが分かっている場合ですか?
大きさが分かっていて初期化が必要ないならこれ↓で問題ないでしょうか?
vector<T> v_y;
v_y.reserve(y_max);
vector<vector<T>> v_x;
v_x.reserve(x_max);

229 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 02:09:52.12 ID:rkihjFNH]
>array2d.push_back(tmpArray);

なんで一本グソのような無駄な配列を作って
わざわざそこからコピーして初期化すんだよ
無駄が大杉だろ

230 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 07:18:11.14 ID:7UqN+IkX]
批判しかしないやつはスルーで

231 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 11:14:43.85 ID:VAiv/2zu]
ブーメラン乙
array2d.push_back(std::move(tmpArray));

232 名前:デフォルトの名無しさん [2014/08/14(木) 15:29:25.75 ID:8/lb7CTL]
そんな糞なことは止めて行列ライブラリを作るか既存のものを使え

233 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 19:02:21.63 ID:sAFDwER0]
確かに2D,3Dのシミュレーションする数値演算ならvectorはちょっとお呼びでない

234 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 21:08:35.96 ID:8EuqiR5k]
widthxheight固定なら素直に連続領域とれるビットマップのような二次元配列だな

235 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 21:51:37.55 ID:MeOL7pvQ]
キミはスパース行列を知らないのか?



236 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 22:29:17.20 ID:BNqK6z00]
>>232
>>233
>>234
おすすめのライブラリはありますか?
用途は数値の書き込みと読み取りをするだけです

237 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 22:37:39.50 ID:BNqK6z00]
よく考えてみれば書き込みと読み取りだけならどのライブラリでも良さそうですね

238 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 01:33:12.65 ID:j/DUXog9]
なんでこんな需要の多そうなクラスが標準で無いんだろうと思ったけど
まさか
double unko[100];
((double(*)[10])(unko))[9][9];
って保証されてない?

239 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 02:20:11.21 ID:Wy6EwLn0]
[99]のアクセスと同じかどうかってことなら同じじゃね
通常の配列も多次元配列もメモリ上は一直線になることは決まってたはず
ソースは探してない

240 名前:デフォルトの名無しさん [2014/08/15(金) 07:18:12.35 ID:gY0bb4xI]
>>216
余談だけど、前 VS が無かったから Mac で久しぶりに XCode で書いてたら、

std::vector<std::vector<_T>> vec;

で構文エラー投げられた。>> を stdin の演算子として読まれたらしい
VS ではこんな事なかったのにやはり GNU は信用できn(ry

241 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 08:09:25.44 ID:1yOnOTpl]
>>240
それが昔からのデフォだ
vector<vector<T>>
と書いてOKになったのは C++11 からだね、VS で ++11 に対応しているの

242 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 08:10:41.78 ID:rBk8U20E]
>>240
その>>をきちんと解釈するのはC++11からだ。
C++03では> >と書かないといけなかった。

243 名前:デフォルトの名無しさん [2014/08/15(金) 08:49:10.77 ID:gY0bb4xI]
>>241 >>242
そうだったのか!
どうりで XCode では std::to_string() が使えなかった訳だ。

244 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 09:24:41.59 ID:Lne+Px+X]
そんなの常識タッタタラリラ

245 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 10:40:55.78 ID:vo9zRayR]
ピーヒャラピーヒャラ



246 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 12:54:12.49 ID:Aqg845W8]
www.buzzword.jp/img/face10.png

247 名前:デフォルトの名無しさん mailto:sage [2014/08/15(金) 15:40:11.62 ID:rWnY0+Nz]
>>243
そのXcode古すぎじゃね?
それかオプションでC++03になってるか






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

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

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