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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2017/07/18(火) 07:07:27.20 ID:vzMDiUgd.net]
エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。

◆ソースのインデントについて
半角空白やTABでのインデントはスレに貼ると無くなります。
そのため、アップローダーに上げるのも手ですが直接貼る場合は、
全角空白か に置換すると見栄えだけはよくなります。

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

前スレ
【初心者歓迎】C/C++室 Ver.100【環境依存OK】
mevius.2ch.net/test/read.cgi/tech/1478440682/

910 名前:デフォルトの名無しさん mailto:sage [2017/10/17(火) 18:28:45.12 ID:hVetZd8l.net]
verilogやHLSLのどこがC言語なんだよ。

911 名前:デフォルトの名無しさん mailto:sage [2017/10/17(火) 18:47:35.04 ID:HbTCC5+E.net]
>>893
そんなことを書いてるのはお前だけ

912 名前:デフォルトの名無しさん [2017/10/17(火) 21:42:56.86 ID:0HMqhgUO.net]
>>889
汎用とか特化に食いついてるのではなくて、「事実上消えた」ってところと、「自分で書くプログラムでそこまで想定することはまず無いわな」の部分に食いついているんだけどね。

913 名前:デフォルトの名無しさん [2017/10/17(火) 21:46:38.99 ID:0HMqhgUO.net]
組み込みの世界が特化という点は反論しないし、ぶっちゃけどうでもいい。
でも、特化してるからって、別に消えてないし、仕事で普通に気にしてるし。

914 名前:はちみつ餃子 mailto:sage [2017/10/18(水) 02:21:26.88 ID:8euWiZGY.net]
>>895-896
「それなりに広く使われているアーキテクチャとしては」と限定して書いているのは、
そうでないアーキテクチャでは残っていることは承知しているという意味だよ。
自分ってのはまさに「私」のことなので実際気にする場面に遭遇したことがないし、
それをどうこう言われても俺に組込み系の仕事をして欲しいというのでもなけりゃ何の意味があるのかわからん。

915 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 04:12:20.13 ID:aws8n6lY.net]
C/C++てもう組込用途しか需要無いんですか?

916 名前:はちみつ餃子 mailto:sage [2017/10/18(水) 04:51:52.35 ID:8euWiZGY.net]
んなこたーない。

917 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 05:22:14.83 ID:Wqkl1Wvb.net]
JavaやC#、その他の高級言語、スクリプト言語で済むならそこにはC/C++の出番はない。
組み込み、OS、ドライバ、ハード寄り専用言語と思っていい。

918 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 06:54:18.33 ID:lHCL+31V.net]
>>897
日記のつもりならチラ裏にでも書いとけ
お前が遭遇するかどうかなんてどうでもいい



919 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 07:45:33.63 ID:AKs1AZwU.net]
個人的な主観をさも一般論かのように書かれるのは迷惑だな

920 名前:デフォルトの名無しさん [2017/10/18(水) 08:56:09.82 ID:at3yxigr.net]
>>897
特化してることと、広く使われてるって事は、互いに背反しないんだけど?
君の中では、特化=狭い、と言う定義なのなら、この話はこれでおしまいでいいよ。

921 名前:デフォルトの名無しさん [2017/10/18(水) 09:00:16.16 ID:at3yxigr.net]
>>897
あともう一つ、君の今いる世界が、世間一般とは限らないから。

922 名前:デフォルトの名無しさん [2017/10/18(水) 10:03:33.10 ID:NAca40Iu.net]
並行世界か。

923 名前:はちみつ餃子 mailto:sage [2017/10/18(水) 11:38:55.90 ID:8euWiZGY.net]
>>902
「思う」とか書いてるの、感想以外の何物でもないじゃん。
書いてないことを勝手に読み取るなよ。

924 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 11:55:04.11 ID:LfPioRS3.net]
8bitでない処理系とかの話になるとすぐ荒れるよな
客観的に見ると、噛み付いてる組み込みの連中の方が支離滅裂だよ
脊髄反射する前に一連のレス読み直した方がいい

925 名前:デフォルトの名無しさん [2017/10/18(水) 12:15:35.97 ID:NAca40Iu.net]
VSはよく出来てるからMSから取り上げて国連で管理するべき。

926 名前:デフォルトの名無しさん [2017/10/18(水) 12:16:43.65 ID:NAca40Iu.net]
国連移管後のVSは戦略物資として利用者を追跡するべき。

927 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 12:54:25.64 ID:lHCL+31V.net]
>>907
> 脊髄反射する前に一連のレス読み直した方がいい
ブーメラン乙 w

928 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 13:11:40.64 ID:oy9jxwBz.net]
907だが、本気でそう思うなら頭沸いてるぞ



929 名前:デフォルトの名無しさん [2017/10/18(水) 15:39:35.53 ID:NAca40Iu.net]
病院に連れて行ったほうが良い。

930 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 20:02:41.54 ID:3bYwz/rX.net]
armとインテルだけで世界が回ってると思ってるのかな

931 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 21:03:18.48 ID:lHCL+31V.net]
本気でそう思うからお前らがまず受診してこいよ w
お前らの世間狭すぎるだろ

932 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 23:53:45.00 ID:oy9jxwBz.net]
>>879
>アーキテクチャが事実上消えた
組み込み系じゃない俺でもさすがに消えてないとは思うが、
まず基本的に1バイトの定義がはっきりして、さらにコンピュータの性能進化とともに
特殊な処理系が減っていくならそれ自体は良いことじゃねーの?
>>868辺りからの流れに対して無意味な罵倒してるのはお前らだろ
特殊な処理系を知ってるのがお前らのアイデンティティなの?ww

あと
>>895
>「自分で書くプログラムでそこまで想定することはまず無いわな」
俺もまず想定しないよ、リトルエンディアンですら気にしたことない
気にするのは必要になってからだ、まず必要にならないのに想定してコスト増やすのはただの給料泥棒

933 名前:デフォルトの名無しさん mailto:sage [2017/10/18(水) 23:59:19.56 ID:oy9jxwBz.net]
間違えた、ビッグエンディアンだった
リトルエンディアンの環境でしか書いたことないし、俺の場合は多分今後も無いので。

934 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 00:31:08.38 ID:4jS9VIw9.net]
Cが使われるような用途ではバイナリレベルの話は必須のはずだが。IF仕様で必ず指定あるだろ。

935 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 08:27:23.91 ID:hylRky7G.net]
引っ込みつかなくなった井の中の ID:oy9jxwBz 乙 w

936 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 09:17:54.41 ID:Guom/JOK.net]
さすがに>>880は乱暴過ぎると思うぞ

937 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 11:09:01.22 ID:Ka5Awqhg.net]
>>ID:lHCL+31V=ID:hylRky7G
>>901
>>910
>>914
>>918
いや、全部ブーメランしてんのお前だから

938 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 12:45:12.45 ID:hylRky7G.net]
>>919
まあcharが8bitはまだわかるけどx86決め打ちとかあり得んよな
よほど井の中の蛙扱いされたのが悔しかったみたいだ w



939 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 13:08:04.36 ID:Ka5Awqhg.net]
俺は>>880じゃないし
他人のレス(>>919)を自分の煽りに利用するなクズが

ハードの制約や特殊な環境というのがCPUにしか無いと思ってる辺り、井の中の蛙はお前
手加減してやってるうちに黙るか謝れ
とっくに論破されてるだろ?

940 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 14:15:39.49 ID:qgTZ/C3n.net]
普通に自信あるなら論点のみ論破して後スルーでよくね?

941 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 21:51:19.20 ID:AKvCLhcx.net]
> ハードの制約や特殊な環境というのがCPUにしか無いと思ってる
引っ込みつかなくなって話をそらそうと必死だな w

942 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 23:46:58.92 ID:6TDKNKTM.net]
ハネウェルの9ビットは汎用コンピュータだけどな

943 名前:はちみつ餃子 mailto:sage [2017/10/21(土) 00:01:02.62 ID:piER3a9b.net]
多くの職をなるべく均等に育成する方針でいたんだけど、
まずはどれでもいいからレベル上げして高レベルの宝の地図をゲットしたら育成なんていくらでも出来るな。
完全に失敗だわ。
仕方がないのでウォルロ北東の高台ではぐれメタル相手にレベル上げしてる。

944 名前:はちみつ餃子 mailto:sage [2017/10/21(土) 00:01:29.50 ID:piER3a9b.net]
>>926
すまん。 誤爆した。

945 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 01:26:13.78 ID:01QdRZD5.net]
どのスレか特定してやる

946 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 08:05:22.19 ID:RIH/f2PJ.net]
ドラクエ9かな

947 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 09:07:27.71 ID:FoEY9rcC.net]
ウォルロ
確定ですね

948 名前:デフォルトの名無しさん [2017/10/27(金) 15:14:51.06 ID:BaiBMwP3.net]
typedef size_t size_type;
こういうコードを良く見るんですが、これは何のためにやってるんでしょうか?



949 名前:片山博文MZ mailto:sage [2017/10/27(金) 15:26:11.40 ID:xRxq9X9w.net]
>>931
型を抽象化して、型の切り替えを楽にするためさ。

950 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 15:47:51.76 ID:C4KpdBNl.net]
conanのようなパッケージマネージャってどうなの?
使ってる人ー?

951 名前:デフォルトの名無しさん [2017/10/27(金) 16:29:53.23 ID:8v9HsLU9.net]
驚きの柔軟剤ふわふわファーファ。

952 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 20:57:21.79 ID:qcblY/zy.net]
クラスの静的メンバー変数って何に使うんですあk?

953 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 21:06:52.03 ID:/LUCvRWS.net]
オブジェクトを横断して共有したい情報の保持
何個実体作ったっけ?ってカウントしたり

954 名前:デフォルトの名無しさん [2017/10/27(金) 21:23:23.67 ID:BaiBMwP3.net]
型を抽象化とはsize_tをsize_typeでオーバーライドすると言う意味で
型の切り替えとはsize_tとsize_typeを使い分けるということでしょうか?
型の切り替えの意味が合っているとしたら、中身が同じものを使い分ける事なんてあるんですか?

955 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 21:44:14 ]
[ここ壊れてます]

956 名前:.01 ID:M7vRAAca.net mailto: 例えば何かの都合でsize_typeをssize_tにした方がよいとなった場合にtypedefを一行変更するだけで済む
他の部分はsize_typeという型で抽象化されているから簡単に切り替えられるということ
[]
[ここ壊れてます]

957 名前:デフォルトの名無しさん [2017/10/27(金) 23:53:57.84 ID:BaiBMwP3.net]
>>938 >>932
やろうとしてることはある程度理解できました。ありがとうございます。
でもsize_typeをssize_tにするようなことはしてないスクリプトにも、このコードは書かれています。
そういうケースに備えて念のために書いておいたほうがいいということなんでしょうか。

958 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 00:20:18.16 ID:n4Ie7UZ/.net]
>>939
いや、べつに



959 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 05:57:50.48 ID:KtZXeElz.net]
typedef unsigned int Uint;
typedef unsigned int MyResID;
typedef unsigned int MyID;

例えば、Uint だと意味が分からないから、
リソース番号なら、MyResID
自分のID なら、MyID
などと再定義して、用途を分けておくと、見た目にも分かりやすい

「c typedef」で検索!

960 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 11:30:31.16 ID:aIwzbvt/.net]
変数名でわかるじゃん

961 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 11:45:42.58 ID:UQLb/21G.net]
見た目が分かりやすいからsize_tをsize_typeにすると>>941は思ったのだろうか

962 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 12:16:56.59 ID:5IbYoyZ3.net]
>>941
それは見た目で用途が分かりやすいというだけでなく、ある用途の場合だけ型を変更し易いという利点が主じゃないかな?
例えばMyResIDは当初は整数で良かったけど後で文字列に変更したくなったとか。

963 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 12:33:49.13 ID:MyIroYJQ.net]
MyResIDは8桁の数字を取り扱うんだけど、
intが16bitの環境に移植することになった…なんて時に便利

964 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 12:46:46.26 ID:KJARTkQB.net]
>>931
よく見るってどこでよく見るの?

965 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 13:08:37.17 ID:0cbtiG+h.net]
テンプレートなんかでよく見るvalue_typeみたいなもんかね

966 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 18:04:33.78 ID:vd1YUsZz.net]
>>900
>組み込み、OS、ドライバ、ハード寄り専用言語と思っていい。
言語系自体(C#/Java) は C/C++ で書かれているんじゃない?C/C++ 以外で記述されたエディター、というのも思い当たらないね

967 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 18:23:56.52 ID:TOtCAKzB.net]
>>948
Atom, Visual Studio Code

968 名前:デフォルトの名無しさん mailto:sage釣 [2017/10/31(火) 18:52:57.69 ID:QkT+8axj.net]
>>948
Vz



969 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 19:10:34.72 ID:xyLQL02T.net]
>>950
あれのマクロは色々参考になった
printf に似たものの実装とかもやってたし



アセンブラで

970 名前:デフォルトの名無しさん [2017/10/31(火) 20:51:58.22 ID:3JCeBBQH.net]
>>949
Electronに使われてるV8がC++だがな

971 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:12:46.61 ID:UcxIkq8e.net]
クラス定義でサンプル見るとprivate:が書いてあるのばかりだけど
クラスはデフォルトでpraivateだから書く必要ないよね
可読性のために書いてるの?

972 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:32:02.47 ID:qOYb+y+r.net]
>>952
それは英語で書いてるよねって見方と一緒

973 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 08:05:04.65 ID:1pZzHGIc.net]
>>953 俺は書く派。
public や protected と統一されて座りがいいと感じる。
流石に「デフォルトでprivate」を覚えられないわけではない。

974 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 09:32:55.92 ID:hOs9b/I4.net]
>>953
class aaa
{
public:
//メンバ関数−上の方が目立つ?
private:
//メンバ変数−下の方にこそっと?
}
みたいな書き方が一部で流行してるからってだけでは?
実際、流行してるのか否かも知らんが

975 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 19:35:21.85 ID:nkaKR7E8.net]
>>953
綴りも覚えられないようなボンクラは書かないで済むなら

976 名前:書きたくないって思うんだろうな w []
[ここ壊れてます]

977 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 20:04:14.14 ID:qg2RuF/n.net]
こういうクラスメソッドがあれば便利だな〜
一番上にpublicで追加したろ
ってなった時に巻き添えでpublicにしないように

978 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 20:23:43.72 ID:GUg4tmKS.net]
unordered_mapの時間オーダーはランダムアクセスがo(N)で検索がo(1)ですよね?
以下を見ると逆になってるのだすが間違いですよね?

https://qiita.com/h_hiro_/items/a83a8fd2391d4a3f0e1c#all_table



979 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 20:59:34.54 ID:M3kcqSwB.net]
>>959
間違ってない
そのページで使ってる『ランダムアクセス』『検索』の意味(処理の内容)に対しては一覧表の計算量であってる

980 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 21:01:07.22 ID:4wUVM0HB.net]
画像処理についての質問です
下記コードのループ1のframeTestとループ2のframeTest2で出来上がる画像が違うのは何故なんでしょうか?
(frameTestは緑一色、frameTest2は緑赤青の3色)
使っているのはvisual studio2017です

コード codepad.org/IHZhOf8h

981 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 21:20:00.76 ID:xoMVkOKP.net]
TestIm[] が想定してる並びになってない
1回目のループ中に 実は書き壊してるw
なので 2回目のループの時は 参照だけしてるはずなのに同じにならない

インデックスの式 Testwidth*y + x*3 + 0〜2(色)
1行あたりのバイト数が Testwidth で見積もってる式になってるからね

982 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 21:36:50.34 ID:xoMVkOKP.net]
Testwidth * 3 * y + x * 3 + 0〜2
これで望みの形になると思うよ

W * H 次元の空間を 1次元で並べるなら W * y + x
W * H * C 次元の並びは (W * y + x) * C + color → W * C * y + C * x + color
こんな感じ

983 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 21:41:14.25 ID:4wUVM0HB.net]
>>962, >>963
ありがとうございます!!
TestIm[]の添え字がいけなかったのですね…そのようにして実行してみます

984 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 21:56:38.47 ID:GUg4tmKS.net]
>>960
すみません、ランダムアクセスと検索を逆に指してました。
前者がoperator []、後者がfindですよね。

unordered_setは検索がo(1)なのでunordered_mapも同じかと思ってました。
ハッシュテーブル系はo(1)になると思っていたのですが、そうでもないのでしょうか?

985 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 22:44:25.89 ID:M3kcqSwB.net]
>>965
> 前者がoperator []、後者がfindですよね。
これが違う

あのページでいうunordered_mapに対する『検索』は
(key, value)ペアのvalueが指定した値と等しい要素を探す処理(要するに逆引き)のこと
となるとkeyとは無関係な処理なため全要素を順次走査することになるからO(n)になる

986 名前:デフォルトの名無しさん [2017/11/01(水) 23:27:07.64 ID:kBuKLW51.net]
>>965
O(1)になる検索のアルゴリズムなんてねえよ

987 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 23:32:44.98 ID:Oby+I+5u.net]
Hash は、O(1)

HTree とか、衝突(シノニム)時に2分探索になるが、それもまれ

988 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 07:12:51.03 ID:BfnVxeM2.net]
>>967
Hashも知らんのかよ...



989 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 07:23:18.79 ID:b+wcFKOg.net]
検索っていうか、辞書引きだな

990 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 08:18:33.66 ID:KKkRrWi/.net]
本筋と関係ないけど、O(n)とo(n)は意味が全然違うので注意

991 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 09:09:16.73 ID:rFzi+Leg.net]
wacomのサンプルコードについて質問です
wdnet.jp/library/windows
ここのMFCデモのdemobiew.cpp内にある
codepad.org/hUs8JI4t
このlc.lcInExtXはなんの値を指しているのでしょうか
自分の環境ではこの値を適当な定数にしなければペンとカーソルの位置が一致しません

992 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 11:24:52.00 ID:+ai7GGRX.net]
>>966
ありがとうございます。そういう意味でしたか。
unordered_setはkey自体がvalueなので検索もO(1)だという単純な話ですね。

993 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 13:25:09.29 ID:fgcqUQ//.net]
>>972
公式にドキュメントがあるなら一通りは目をとおしな
wdnet.jp/library/windows/wintab#2.3

> 2.3 Wintabの初期化
...
> 2.スケーリングの初期化について
>  以下のように、LOGCONTEXT の値を初期化する事でスケールの設定を行います。
...
> A lcInExtX,lcInExtY にタブレットの入力最大座標

994 名前:sage [2017/11/02(木) 19:37:23.87 ID:Vcb2n/8t.net]
以下,かっこよくなりませんか?
while文の条件がダサすぎるので何とかしたい.
std::array は使わず,2次元の生配列でお願い.

以下,ソース.

#include <iostream>
#include <cstdlib>
#include <fstream>

int main(){
std::ifstream fin( "xxx.txt", std::ios::in );

double data[6][4];
int i = 0;
while( fin >> data[i][0] >> data[i][1] >> data[i][2] >> data[i][3] ){
for( int j=0; j<4; ++j )
std::cout << data[i][j] << " ";
std::cout << std::endl;
++i;
}

return EXIT_SUCCESS;
}

995 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 20:37:36.68 ID:j119FHt+.net]
はい。なります。

996 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 20:43:01.12 ID:RVlmQZC9.net]
十分格好いいです

997 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 20:49:14.23 ID:QvGPm7pP.net]
読むのと書くのを関数に分けるべきかな

998 名前:はちみつ餃子 mailto:sage [2017/11/02(木) 23:14:01.04 ID:4tfXXWiS.net]
>>975

個人的にはこんな感じにするかな……。

#include <iostream>
#include <fstream>

std::istream& operator>>(std::istream& in, double (&data)[4]) {
for(auto& e: data) in >> e;
return in;
}

std::ostream& operator<<(std::ostream& out, double (&data)[4]) {
for(auto e: data) out << e << " ";
return out;
}

int main(void) {
std::ifstream fin( "xxx.txt", std::ios::in );

double data[6][4];
int i = 0;
for(auto& data_line: data) {
if((fin>>data_line).fail()) break;
std::cout << data_line << std::endl;
}

return EXIT_SUCCESS;
}

配列のままがお望みらしいのでこう書いたけど、専用の型を用意した方が綺麗っちゃ綺麗



999 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 00:03:21.41 ID:4eJ/7N9T.net]
>>975
while( [&]{ for(auto& e: data[i]) fin >> e; }(), fin.good() ){
for( auto& e: data[i] )
std::cout << e << " ";

1000 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 00:49:56.36 ID:LOXVFC/o.net]
975です,sage方法すら忘れててすまぬ.
>>976
そのソースを示してくれると嬉しい
>>977
いや,これだと生理的にダメなんすよ
>>978, 979
大層なことするわけじゃないからなるべく短く行きたいんや
>>980
つか,whileの条件式に登場する , は何ぞや,なレベル.
以下のソースだと,ラムダ式部分に警告 expression result unused が出る.
バイナリは吐くが,実行すると大量のコンソール出力があり,
しかも全く読めていないっぽいうえ,Segmentation faultしやがる.

以下,試したソース
#include <iostream>
#include <cstdlib>
#include <fstream>

int main(){
std::ifstream fin( "xxx.txt", std::ios::in );

double data[6][4];

int i = 0;
while( [&]{ for( auto& e

1001 名前:: data[i] ) fin >> e; }, fin.good() ) {
for( auto& e : data[i] ) std::cout << e << " ";
std::cout << std::endl;
++i;
}

return EXIT_SUCCESS;
}
[]
[ここ壊れてます]

1002 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 01:05:35.02 ID:4eJ/7N9T.net]
>>981 https://www.google.com/search?q=カンマ演算子

1003 名前:デフォルトの名無しさん mailto:saga [2017/11/03(金) 01:56:10.83 ID:LOXVFC/o.net]
>>982
カンマ演算子か.なるほど.
whileの条件式に与えたラムダ式を評価してその成否は破棄しつつ
カンマ演算子の右にあるfinがまだ使えるかどうか,
で処理継続の可否を判断している,という理解でいいのかな.

でも,981のソースだと,while文が終わらずに,無限ループに突入しているもよう.
この現象を説明しつつ,問題を解決するソースをくれると喜びます.

1004 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 04:19:30.63 ID:4eJ/7N9T.net]
>>983 >>980

1005 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 06:53:03.34 ID:LOXVFC/o.net]
975です,

>>981 のソースでいう
while( [&]{ for( auto& e : data[i] ) fin >> e; }, fin.good() ) {

while( [&]{ for( auto& e : data[i] ) fin >> e; }(), fin.good() ) {
にしたら正常に動作しました.
まずはありがとうでした.

1006 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 16:37:14.49 ID:t+2N1bPb.net]
c++初心者向けの名著コードない?

1007 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 20:48:45.38 ID:fZH3r81G.net]
お前の頭は既にしてバーコードだろ?

1008 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 20:59:39.93 ID:t+2N1bPb.net]
坊主頭なんだが、ストレスで10円ハゲがたくさんできてQRコードだ。安心しろ。



1009 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 09:57:38.12 ID:io7R91TU.net]
char a[8]="12 34 56";
と言うのがあったとして
これを数値の123456にしたい時、一番速い書き方ってどんなだろうか

1010 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 10:21:35.26 ID:KEPGzX0z.net]
>>989
aの内容は書き換えても良い?
数値は必ず2桁の空白区切り?






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

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

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