エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。
◆ソースのインデントについて
半角空白やTABでのインデントはスレに貼ると無くなります。
そのため、アップローダーに上げるのも手ですが直接貼る場合は、
全角空白か に置換すると見栄えだけはよくなります。
【アップローダー】(質問が長い時はココ使うと便利)
http://codepad.org/ (コンパイルもできるし出力結果も得られる[]privateをチェック)
http://ideone.com/ (時間帯によってはcodepadが重い事があるのでここも利用)
前スレ
【初心者歓迎】C/C++室 Ver.99【環境依存OK】
http://echo.2ch.net/test/read.cgi/tech/1469177649/
探検
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2016/11/06(日) 22:58:02.60ID:dU5z27As
412デフォルトの名無しさん
2017/02/12(日) 02:53:21.48ID:guRObziH 正しいけど"可能な限り"の範囲がまだまだ足りない
組み込みの世界はC言語が強過ぎて未だにC++すら使えない環境がざらにあるしな
組み込みの世界はC言語が強過ぎて未だにC++すら使えない環境がざらにあるしな
413デフォルトの名無しさん
2017/02/12(日) 08:33:11.98ID:XNCDxJ48 >>407
C/C++ くらいなら,K&R2 に準拠にさせてよー C#, Java も,とはいわないからさー
C/C++ くらいなら,K&R2 に準拠にさせてよー C#, Java も,とはいわないからさー
414デフォルトの名無しさん
2017/02/12(日) 08:43:31.97ID:MRPxQTsD >>413
C++を入れるなよ
C++を入れるなよ
415デフォルトの名無しさん
2017/02/12(日) 10:10:03.29ID:nF2JpTw9 結局C言語で全て済んでしまうからね。他は趣味。はっきりわかんだね
416デフォルトの名無しさん
2017/02/12(日) 14:01:05.04ID:XNCDxJ48 >>414
いっしょだよ,C++ も普通に K&R2 に似せて書くのが一番いい
いっしょだよ,C++ も普通に K&R2 に似せて書くのが一番いい
417デフォルトの名無しさん
2017/02/12(日) 15:47:27.43ID:CF268nsq >>402 の「ブロック先頭で変数を定義するのは時代遅れ」ていう
指摘を受けての流れじゃないかな。
最初の使用の直前まで変数定義を遅らせることができる、
というC++での改良や、それを取り込んだC99以降で
わざわざK&R2版の書き方に制限されるのは困るという話。
おそらく、K&R2に似たスタイルが良いという主張も
「新しく追加された便利機能は使った上でK&R風のスタイル」
という意図なんだと思う。
指摘を受けての流れじゃないかな。
最初の使用の直前まで変数定義を遅らせることができる、
というC++での改良や、それを取り込んだC99以降で
わざわざK&R2版の書き方に制限されるのは困るという話。
おそらく、K&R2に似たスタイルが良いという主張も
「新しく追加された便利機能は使った上でK&R風のスタイル」
という意図なんだと思う。
418デフォルトの名無しさん
2017/02/12(日) 15:59:10.19ID:rZ/K+l3Q >>400はiの宣言を先に、tよりも先にすることで、何を試したのかってのをわかりやすくしてんだろ
K&Rなんかにこだわるよりもこういうソースの方がいいわ
K&Rなんかにこだわるよりもこういうソースの方がいいわ
419デフォルトの名無しさん
2017/02/12(日) 17:25:00.92ID:XNCDxJ48 >>417
当然だ
当然だ
420デフォルトの名無しさん
2017/02/13(月) 00:11:12.09ID:ebN6PGVD 使う直前に変数を宣言してるとたまにgoto出来ないerrorが出るのが面倒くさい
421デフォルトの名無しさん
2017/02/13(月) 11:51:26.73ID:M86uydzz ブロックの違う同名変数の取り違えでトラブってるのを見てから
宣言位置が不揃いなのもよくないと思うようになった
宣言位置が不揃いなのもよくないと思うようになった
422デフォルトの名無しさん
2017/02/14(火) 01:24:51.99ID:xlM9Sf4d それは宣言位置の問題じゃなくて、1ブロックが大き過ぎることが原因じゃないか?
423デフォルトの名無しさん
2017/02/14(火) 08:51:02.57ID:SrPWZnE2 スコープ違う同名の変数を書いたら間違えた
↓
宣言位置をスコープの先頭に揃えておけば俺はきっと気づけたんだ!
これがバカの思考
↓
宣言位置をスコープの先頭に揃えておけば俺はきっと気づけたんだ!
これがバカの思考
424デフォルトの名無しさん
2017/02/14(火) 09:10:51.81ID:MfKEp5BT お前等が宣言位置を先頭に揃えておかなかったから俺が間違えたんだ
とまでいかなければまだ許せる。
とまでいかなければまだ許せる。
425デフォルトの名無しさん
2017/02/14(火) 09:11:22.01ID:H0Zx0irg426デフォルトの名無しさん
2017/02/14(火) 09:16:00.91ID:MfKEp5BT 423じゃないが間違えたことないな
どうやったら間違えるのか教えて欲しいくらい
どうやったら間違えるのか教えて欲しいくらい
427デフォルトの名無しさん
2017/02/14(火) 09:25:27.92ID:he6YB8dM 多分ブロックごとコピペしてたまたまエラーが出なかったんだろ
428デフォルトの名無しさん
2017/02/14(火) 09:37:58.47ID:tRUBGDEd 世の中には1関数が1000行を超える糞コードが存在するからな
そんな糞コードに後から修正入れようとすると信じられないようなミスも起こる
そんな糞コードに後から修正入れようとすると信じられないようなミスも起こる
429デフォルトの名無しさん
2017/02/14(火) 10:07:10.54ID:H0Zx0irg 関数の長さと糞さは別だな
無理に短くしてあちこち飛ぶコードの読みにくさったらありゃしない
無理に短くしてあちこち飛ぶコードの読みにくさったらありゃしない
430デフォルトの名無しさん
2017/02/14(火) 10:25:24.18ID:ze+N1Rxh 短いからといって読みやすいはとは限らないが、
長いと読みにくいのは確実なので無関係ではないな
長いと読みにくいのは確実なので無関係ではないな
431デフォルトの名無しさん
2017/02/14(火) 12:52:20.45ID:8LvI494R >>429
1行目と2行目で矛盾してるぞ
1行目と2行目で矛盾してるぞ
432デフォルトの名無しさん
2017/02/14(火) 15:01:49.07ID:Y4N6R9g2 短く を目標にはしないが、長いと
どうしても何かの力を感じてw
短くしたくなるわなぁ
どうしても何かの力を感じてw
短くしたくなるわなぁ
433デフォルトの名無しさん
2017/02/14(火) 15:19:01.37ID:t9BEI7G/ 必死にprivate関数で小分けにしてた頃を思い出すわ
気にしなくなってprivate関数の存在価値がよく分からなくなった
気にしなくなってprivate関数の存在価値がよく分からなくなった
434デフォルトの名無しさん
2017/02/14(火) 15:31:24.51ID:Y4N6R9g2 privateとその長さは関係ないと思うが
435デフォルトの名無しさん
2017/02/14(火) 17:04:37.50ID:lntB2yLX 俺も429派かなぁ
特に再利用するようなものでもないのに関数に小分けにしてもあまり意味がないし
仮に1000行あったとしても、制御構造が単純で上から下へ逐次実行するだけだったり
プログラムの読みにくさと関数の長さは根本的に関係ないと思う
関数の長さに関係なく単純に、
仕様が複雑で、ややこしいことしている箇所は、やはりややこしい
難しいアルゴリズムを使っている個所は、やはり難しい
特に再利用するようなものでもないのに関数に小分けにしてもあまり意味がないし
仮に1000行あったとしても、制御構造が単純で上から下へ逐次実行するだけだったり
プログラムの読みにくさと関数の長さは根本的に関係ないと思う
関数の長さに関係なく単純に、
仕様が複雑で、ややこしいことしている箇所は、やはりややこしい
難しいアルゴリズムを使っている個所は、やはり難しい
436デフォルトの名無しさん
2017/02/14(火) 17:07:50.38ID:lntB2yLX そうはいっても100行を超える関数はさすがに書いたことないけどな
クラスビューとかでジャンプできなくなるから作業性に問題が出る
クラスビューとかでジャンプできなくなるから作業性に問題が出る
437デフォルトの名無しさん
2017/02/14(火) 17:12:21.40ID:lntB2yLX 100行と書いたけど、それは1000行のまちがいだ
100行を超える関数は普通に書くことがあるな
新しいC++になってからラムダが関数内関数の代わりに使えるようになったから
こういったものを駆使すると長い関数を書いても比較的に問題が出にくくなったってのはある
メソッドにするとクラス空間が汚れるから関数内関数の方がよい場合も多々
100行を超える関数は普通に書くことがあるな
新しいC++になってからラムダが関数内関数の代わりに使えるようになったから
こういったものを駆使すると長い関数を書いても比較的に問題が出にくくなったってのはある
メソッドにするとクラス空間が汚れるから関数内関数の方がよい場合も多々
438デフォルトの名無しさん
2017/02/14(火) 19:47:15.52ID:vv2eSSm9 100行超える関数はほとんど書かないけど、
100行超えるコメントはしょっちゅう書くな。
100行超えるコメントはしょっちゅう書くな。
439デフォルトの名無しさん
2017/02/15(水) 01:17:06.93ID:xbLGAB7Z 名付けに困らないくらいの単位で処理を纏めて上にポイだな
無名ネームスペース大活躍
再利用しなくても処理を分けとくとバグを潰しやすいし
無名ネームスペース大活躍
再利用しなくても処理を分けとくとバグを潰しやすいし
440デフォルトの名無しさん
2017/02/16(木) 04:06:20.95ID:6VkTpxSR ラムダ 入門 で検索しても簡単なサイトが見つかりません。
どこか良いサイトか書籍はありませんか。
どこか良いサイトか書籍はありませんか。
441デフォルトの名無しさん
2017/02/16(木) 04:13:34.86ID:0dItl/ZH 入門しなきゃならん奴が使うもんじゃない
442デフォルトの名無しさん
2017/02/16(木) 04:38:21.71ID:6VkTpxSR443デフォルトの名無しさん
2017/02/16(木) 12:45:23.20ID:SkhlZoRn よくわからんもの
ラムダ式、関数オブジェクト
ラムダ式、関数オブジェクト
444デフォルトの名無しさん
2017/02/17(金) 04:01:51.58ID:/gNkD5d3 #include <iostream>
using namespace std;
int main() {
unsigned char aa=0x31;
cout << hex<<aa <<endl;
return 0;
}
なんで 31 と表示されないのでしょう
using namespace std;
int main() {
unsigned char aa=0x31;
cout << hex<<aa <<endl;
return 0;
}
なんで 31 と表示されないのでしょう
445デフォルトの名無しさん
2017/02/17(金) 05:25:27.96ID:Z2r3IJRX たぶん 1 が表示されるでしょ。
aa が char だから出力ストリームでは文字が出る。
数値を出したければ aa を int で定義するか、
cout のところで int にキャストしてやらないと。
aa が char だから出力ストリームでは文字が出る。
数値を出したければ aa を int で定義するか、
cout のところで int にキャストしてやらないと。
446デフォルトの名無しさん
2017/02/17(金) 07:07:08.11ID:39ud/5Wb >aa が char だから出力ストリームでは文字が出る
因果関係がよくからないのですがcharだとなぜ文字がでるの?
因果関係がよくからないのですがcharだとなぜ文字がでるの?
447デフォルトの名無しさん
2017/02/17(金) 07:22:25.14ID:fOTzzkTG >>446
渡した値の型によって、それをどう表示するかが異なるように作られているから。
printfという関数で出力する場合は、出力したい値のほかにそれをどういう形式で出力するかという情報を別に与えていたけど、iostreamでは、型で自動的に処理してくれる。
渡した値の型によって、それをどう表示するかが異なるように作られているから。
printfという関数で出力する場合は、出力したい値のほかにそれをどういう形式で出力するかという情報を別に与えていたけど、iostreamでは、型で自動的に処理してくれる。
448デフォルトの名無しさん
2017/02/17(金) 07:52:16.70ID:+UDZhFA4 uint8_tとか使ってるとき嵌るんだよなぁ。
449デフォルトの名無しさん
2017/02/17(金) 07:53:27.01ID:Z2r3IJRX 「C++では引数の型や個数が異なる同じ名前の関数をいくつも定義できて
引数の型や個数に応じた別々の動作にできる」
「関数引数の変数値が(Cとは異なり)自動的にはintに格上げされない」
くらいしか説明の文面を思いつかないけど、我ながら分かりにくいな。
coutに対する<<演算子(を実行する関数)が、
charの引数に対しては文字を、intの引数に対しては数値を
出力するよう上手いこと作られている。
ってのは「昔からそう決まっとる」式の押し付けがましい感じだし。
引数の型や個数に応じた別々の動作にできる」
「関数引数の変数値が(Cとは異なり)自動的にはintに格上げされない」
くらいしか説明の文面を思いつかないけど、我ながら分かりにくいな。
coutに対する<<演算子(を実行する関数)が、
charの引数に対しては文字を、intの引数に対しては数値を
出力するよう上手いこと作られている。
ってのは「昔からそう決まっとる」式の押し付けがましい感じだし。
450デフォルトの名無しさん
2017/02/17(金) 15:18:41.50ID:/gNkD5d3451デフォルトの名無しさん
2017/02/17(金) 17:04:51.60ID:xoJSqgdl VC++の質問です。
フォームのコントロール(ボタンなど)をアンマネージクラスに保持する方法が知りたいです。
// コンストラクタの引数より、ラベルのコントロールをprivateに保存し、setLabelTextでラベルのテキストを変更するクラス
class LineController
{
private:
System::Windows::Forms::Label^* label_;
public:
LineControllerSystem::Windows::Forms::Label^% label);
void setLabelText(System::String^ str); // label_のTextに引数strを設定。
};
最初に表示されるフォームのコンストラクタにて上記のクラスをnewし、そのクラスインスタンスをアンマネージクラスのシングルトンに保存しています。
シングルトンに保存直後に、シングルトン経由でsetLabelTextメソッドを実行した場合は正常label_のTextを変更可能でした。
しかしボタンクリックイベント内にて、同様にシングルトン経由でsetLabelTextをコールするとlabel_へアクセスしたタイミングで「オブジェクト参照がオブジェクト インスタンスに設定されていません。」が発生してしまいます。
本エラーを回避するにはどのような手法をとればよいでしょうか?
追跡参照(%)などを調べているのですが現状解決の糸口が見えません。
シングルトン及び上記LineController自体はできればマネージにしたくないです。。。
フォームのコントロール(ボタンなど)をアンマネージクラスに保持する方法が知りたいです。
// コンストラクタの引数より、ラベルのコントロールをprivateに保存し、setLabelTextでラベルのテキストを変更するクラス
class LineController
{
private:
System::Windows::Forms::Label^* label_;
public:
LineControllerSystem::Windows::Forms::Label^% label);
void setLabelText(System::String^ str); // label_のTextに引数strを設定。
};
最初に表示されるフォームのコンストラクタにて上記のクラスをnewし、そのクラスインスタンスをアンマネージクラスのシングルトンに保存しています。
シングルトンに保存直後に、シングルトン経由でsetLabelTextメソッドを実行した場合は正常label_のTextを変更可能でした。
しかしボタンクリックイベント内にて、同様にシングルトン経由でsetLabelTextをコールするとlabel_へアクセスしたタイミングで「オブジェクト参照がオブジェクト インスタンスに設定されていません。」が発生してしまいます。
本エラーを回避するにはどのような手法をとればよいでしょうか?
追跡参照(%)などを調べているのですが現状解決の糸口が見えません。
シングルトン及び上記LineController自体はできればマネージにしたくないです。。。
452デフォルトの名無しさん
2017/02/19(日) 11:23:25.68ID:2DCCXMeS C++の話題そのものではないのですが
バブルソートとか初歩的なアルゴリズム
を優しく解説している書籍はありませんか。
Amazon見てるのですがもう少し情報がほしいです。
バブルソートとか初歩的なアルゴリズム
を優しく解説している書籍はありませんか。
Amazon見てるのですがもう少し情報がほしいです。
453デフォルトの名無しさん
2017/02/20(月) 01:05:36.35ID:aWzwD2VT >>452
ピタゴラスイッチでバブルソートやクイックソートの概念をグラフィカルに紹介してたよ。
それはさておき、本屋の店頭でアルゴリズムとかデータ構造とかがタイトルに含まれる本をパラパラめくって分かり易いのを探すといいかと思う。
ピタゴラスイッチでバブルソートやクイックソートの概念をグラフィカルに紹介してたよ。
それはさておき、本屋の店頭でアルゴリズムとかデータ構造とかがタイトルに含まれる本をパラパラめくって分かり易いのを探すといいかと思う。
454デフォルトの名無しさん
2017/02/21(火) 00:15:43.57ID:OFTvUoLj とあるOSSをとあるシステムに移植していて、
Intel(2013)やGNU(4.9系)ではコンパイルできるのに
そのシステム専用コンパイラではコンパイルできずエラーになります。
ソースコードやヘッダファイルを修正すれば通るだろうというのは経験的にわかっているのですが
どこを修正したらよいかというのを見つけ方がわからないのですが見つけ方のコツみたいなのはあるのでしょうか?
Intel(2013)やGNU(4.9系)ではコンパイルできるのに
そのシステム専用コンパイラではコンパイルできずエラーになります。
ソースコードやヘッダファイルを修正すれば通るだろうというのは経験的にわかっているのですが
どこを修正したらよいかというのを見つけ方がわからないのですが見つけ方のコツみたいなのはあるのでしょうか?
455デフォルトの名無しさん
2017/02/21(火) 00:32:08.81ID:fcoMqi2n エラーメッセージの意味を考えろ
456デフォルトの名無しさん
2017/02/21(火) 01:18:37.30ID:9fQxfYbZ >>454
エラーメッセージを見ないことには回答のしようがないと思うぞ
まぁ、専用のコンパイラという言い回しから察するに、C++03程度しかサポートしていない古いコンパイラでも使ってるんじゃないか?
エラーが出ている行の周辺でC++11以降の言語機能か、ライブラリでも使ってんじゃね?
エラーメッセージを見ないことには回答のしようがないと思うぞ
まぁ、専用のコンパイラという言い回しから察するに、C++03程度しかサポートしていない古いコンパイラでも使ってるんじゃないか?
エラーが出ている行の周辺でC++11以降の言語機能か、ライブラリでも使ってんじゃね?
457デフォルトの名無しさん
2017/02/21(火) 01:18:57.64ID:bFUDo/lz >>454
ともかく、
そのシステム専用コンパイラ提供しているところに、世界標準のIntel(2013)やGNU(4.9系)ではコンパイル
出来るのにお前のものではできないから出来るようにしたコンパイラをよこせと激しくクレーム
ともかく、
そのシステム専用コンパイラ提供しているところに、世界標準のIntel(2013)やGNU(4.9系)ではコンパイル
出来るのにお前のものではできないから出来るようにしたコンパイラをよこせと激しくクレーム
458デフォルトの名無しさん
2017/02/21(火) 01:32:37.44ID:bFUDo/lz >>456
C++11いっぱいのコードをC++03に修正するって大変そうだな
C++11いっぱいのコードをC++03に修正するって大変そうだな
459デフォルトの名無しさん
2017/02/21(火) 06:31:57.51ID:OFTvUoLj460デフォルトの名無しさん
2017/02/21(火) 08:12:09.46ID:9fQxfYbZ461デフォルトの名無しさん
2017/02/21(火) 15:33:32.84ID:rWOcc73c 一般論としてどういうことに注意したらいいですかって質問じゃなくて、具体的に解決してもらいたいってことなのかよw
462デフォルトの名無しさん
2017/02/21(火) 22:19:07.17ID:OFTvUoLj463デフォルトの名無しさん
2017/02/21(火) 22:24:52.45ID:qEEiXXQS HOGEの中にHAGEが紛れ込んでるんだな
464デフォルトの名無しさん
2017/02/22(水) 07:28:41.35ID:F7TE97aZ465デフォルトの名無しさん
2017/02/22(水) 11:11:49.24ID:T1tKwjPz >>459
テンプレートが悪さしてるか const の取りこぼしかデフォルト引数のミスが起きているとエスパー
テンプレートが悪さしてるか const の取りこぼしかデフォルト引数のミスが起きているとエスパー
466デフォルトの名無しさん
2017/02/22(水) 19:03:10.40ID:7bpb3LbA printf("%s",buf);
と
fputs(buf,stdout);
どっちが好き?
と
fputs(buf,stdout);
どっちが好き?
467デフォルトの名無しさん
2017/02/22(水) 19:20:15.64ID:JmFr9wbV 違う処理のコードを並べてどっちと言われても
468デフォルトの名無しさん
2017/02/22(水) 19:49:35.49ID:OuXxGo6B >>467みたいな人が居るのでprintfかな
469デフォルトの名無しさん
2017/02/22(水) 20:00:39.94ID:G8P7P0/x どっちも最後に使ったの20年ほど前かな
470デフォルトの名無しさん
2017/02/22(水) 21:09:01.14ID:T1tKwjPz puts とか使ったことないわ
471デフォルトの名無しさん
2017/02/22(水) 21:30:22.88ID:Z0Pf8P/J >>469
ログ出力・エラー出力がメインでstdoutはあんまり使わないよな
ログ出力・エラー出力がメインでstdoutはあんまり使わないよな
472デフォルトの名無しさん
2017/02/22(水) 21:36:43.56ID:3nEefUGO putsは改行してくれるんで好きだな。fputsも。
474デフォルトの名無しさん
2017/02/22(水) 21:51:09.45ID:3nEefUGO >>473
あ そうだった。 すまん
あ そうだった。 すまん
475デフォルトの名無しさん
2017/02/23(木) 00:12:45.93ID:oHheANLP 細かいのを大量に出したいときはprintfは遅い
476デフォルトの名無しさん
2017/02/23(木) 18:17:55.29ID:2nyak89s class CL{
CL(int _d, string _s) : d(_d), s(_s)
{
}
public:
int d;
string s;
};
int _tmain(int argc, _TCHAR* argv[])
{
CL *cl = new CL(555, "a");←ここでエラー。なんで?
CL(int _d, string _s) : d(_d), s(_s)
{
}
public:
int d;
string s;
};
int _tmain(int argc, _TCHAR* argv[])
{
CL *cl = new CL(555, "a");←ここでエラー。なんで?
477デフォルトの名無しさん
2017/02/23(木) 18:23:14.57ID:sZtROie8 >>476
こんすとらくたがprivateだから
こんすとらくたがprivateだから
478デフォルトの名無しさん
2017/02/23(木) 18:23:56.57ID:2nyak89s そういうことかあ
あざす
あざす
479デフォルトの名無しさん
2017/02/23(木) 21:15:37.70ID:JF3nU8GT 生成出来ないクラスってやつね。
480デフォルトの名無しさん
2017/02/23(木) 21:50:10.15ID:33+Wu0JT >>479
friend なクラスからしか生成しないようにするとかはあるね
friend なクラスからしか生成しないようにするとかはあるね
481デフォルトの名無しさん
2017/02/23(木) 21:52:15.77ID:JF3nU8GT はい そゆ事。
482デフォルトの名無しさん
2017/02/23(木) 21:53:15.53ID:0FbQfq3V staticメソッドで生成するって形の時に使うことが多い
singletonとか
singletonとか
483デフォルトの名無しさん
2017/02/23(木) 22:20:39.38ID:v0zRNZ3l ctorはpri.でメンバーはpub.って
どういうことなんだ?
どういうことなんだ?
484デフォルトの名無しさん
2017/02/23(木) 22:26:42.14ID:I6Uc1mEc 一つ前のレスも読めない文盲
485デフォルトの名無しさん
2017/02/23(木) 22:44:21.27ID:SD8t1ALL 質問
C/C++でランタイムで現在のメモリの状態
とくにプロセスが使える余っているメモリの量って調べ方はありますか?
C/C++でランタイムで現在のメモリの状態
とくにプロセスが使える余っているメモリの量って調べ方はありますか?
486デフォルトの名無しさん
2017/02/24(金) 08:45:12.70ID:SswDvM4l 環境すら書かないと言うことは
(実質)環境非依存での方法を聞いてるんだろうな?
(実質)環境非依存での方法を聞いてるんだろうな?
487デフォルトの名無しさん
2017/02/24(金) 08:54:02.15ID:See/JzpM そんなもん無いけどな
488デフォルトの名無しさん
2017/02/24(金) 09:53:13.79ID:0sr6h+Re 失敗するまでmallocやnewを繰り返せばええんや
489デフォルトの名無しさん
2017/02/24(金) 10:43:32.63ID:See/JzpM >>488
Linuxじゃ失敗しないよ
Linuxじゃ失敗しないよ
490デフォルトの名無しさん
2017/02/24(金) 10:53:37.11ID:See/JzpM もたろん割り当てるアドレス空間自体が足りなくなったとか、予め上限を設定しておいたとかいうケースは覗いてな
491デフォルトの名無しさん
2017/02/24(金) 11:09:14.16ID:9xRtAprE 16byteのメモリを積んだコンピュータで32byteのメモリ確保したら失敗するよね。
それはわかる。
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
それはわかる。
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
492デフォルトの名無しさん
2017/02/24(金) 11:41:21.86ID:KhjrQy0g 基本的にでっかくメモリ確保というプログラムは作った事がないな。
今はSTLでほげほげ追加してくイメージ。
今はSTLでほげほげ追加してくイメージ。
493デフォルトの名無しさん
2017/02/24(金) 11:47:17.85ID:See/JzpM >>491
>16byteのメモリを積んだコンピュータで32byteのメモリ確保したら失敗するよね。
そうとは限らない。一般的なLnuxの環境依存ではmallocを搭載メモリ以上行っても失敗しない
swap含めて1GBしか積んでいない環境で2GB分malloc可能。確保した領域に書き込んだタイミングで記憶する領域が足りなくなったら色々なプロセスが殺される。oom killerと言われてるもの。
>
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
実装による。現代的なコンピューターではページ単位(4KB)とかでカーネルからプロセスへすきなアドレスへメモリを割り当てられるから物理的なアドレスが連続している必要はない。
プロセス内に連続したアドレス空間が残っていない場合は失敗する
>16byteのメモリを積んだコンピュータで32byteのメモリ確保したら失敗するよね。
そうとは限らない。一般的なLnuxの環境依存ではmallocを搭載メモリ以上行っても失敗しない
swap含めて1GBしか積んでいない環境で2GB分malloc可能。確保した領域に書き込んだタイミングで記憶する領域が足りなくなったら色々なプロセスが殺される。oom killerと言われてるもの。
>
逆に16byteのメモリを積んだコンピュータで7byteのメモリを二回確保して最初の7byteを開放した後に8byteのメモリを確保したら失敗するの?
実装による。現代的なコンピューターではページ単位(4KB)とかでカーネルからプロセスへすきなアドレスへメモリを割り当てられるから物理的なアドレスが連続している必要はない。
プロセス内に連続したアドレス空間が残っていない場合は失敗する
494デフォルトの名無しさん
2017/02/24(金) 11:52:16.13ID:NAh96dM2 仮想メモリというしくみで色々やってくれるようになって
キャパの限界付近ではややこしくなった印象
キャパの限界付近ではややこしくなった印象
495デフォルトの名無しさん
2017/02/24(金) 12:48:55.46ID:KhjrQy0g 家鯖は6G積んでるけどそれぐらいは行けるね。
てかkvmやってると、9Gコミットされてるもん。
てかkvmやってると、9Gコミットされてるもん。
496デフォルトの名無しさん
2017/02/24(金) 15:10:06.50ID:CcmE3pWB >>488
それスワップエリアのサイズ計ってるだけ
それスワップエリアのサイズ計ってるだけ
497デフォルトの名無しさん
2017/02/24(金) 15:25:25.94ID:nwaeFCKh winならGetProcessMemoryInfoなど
498デフォルトの名無しさん
2017/02/24(金) 17:26:32.84ID:9xRtAprE499デフォルトの名無しさん
2017/02/24(金) 18:02:34.91ID:See/JzpM >>498
望む答えだったみたいで良かったわ
熱があって若干朦朧とした頭で読み返さずに書き込んだから今読み返すと誤字とか予測変換で要らない単語入ってたり(一般的なLinux環境)とか、カッコの位置が違う(4KBとかの部分)とかあったけど。
望む答えだったみたいで良かったわ
熱があって若干朦朧とした頭で読み返さずに書き込んだから今読み返すと誤字とか予測変換で要らない単語入ってたり(一般的なLinux環境)とか、カッコの位置が違う(4KBとかの部分)とかあったけど。
500デフォルトの名無しさん
2017/02/24(金) 18:52:48.08ID:dfRROZm/ 環境依存ならPostMessageのエラーコードかな
俺はあんま理解してないけど
俺はあんま理解してないけど
501デフォルトの名無しさん
2017/02/24(金) 19:06:57.61ID:+aOqx8nq Win32なら信頼のPostMessageだな
503デフォルトの名無しさん
2017/02/24(金) 23:03:49.77ID:TLhS+9k8 はよ10年前のソース出せよ
504デフォルトの名無しさん
2017/02/24(金) 23:06:00.45ID:nwaeFCKh505デフォルトの名無しさん
2017/02/25(土) 07:21:27.70ID:98TUEskp なんで2分ちょいで出てくるかね。
506デフォルトの名無しさん
2017/02/25(土) 08:14:13.74ID:QoR/O5Qa 自演
508デフォルトの名無しさん
2017/02/26(日) 18:42:59.30ID:stmjd5mD 味噌県のクセにコーミソース以外のソースを使う非国民は去れ
509デフォルトの名無しさん
2017/03/06(月) 07:57:48.79ID:NqblWJNK510デフォルトの名無しさん
2017/03/06(月) 08:21:33.22ID:1XvIZqGa 最初の人がコピペで作ったんでしょ。+128に定義し直してるのもあるよ
511デフォルトの名無しさん
2017/03/06(月) 08:30:32.82ID:cJfBjMIV Aが奇数のときの動作が違うね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★4 [樽悶★]
- 「“なり得る”って言っただけだから…」高市早苗“存立危機”答弁後に漏らした本音 ★2 [Hitzeschleier★]
- 歩道で93歳男性が女子大学生の自転車にはねられ意識不明 坂を下った先「気付いたときには目の前に」 [七波羅探題★]
- 中国外務省局長 「ポケットに手を入れていたのは寒いから」 日本との局長級会談で ★4 [お断り★]
- 中国が水産物の輸入停止、首相答弁撤回を要求…中国共産党機関紙「輸入停止は一つのシグナルにすぎない」 [ぐれ★]
- 【テレビ】佐野岳 TBS『最強スポーツ男子頂上決戦』収録で重傷… 右膝半月板損傷と靭帯断裂 全治8カ月~9カ月間 [冬月記者★]
- 有識者「今は円安辛いかもしれない。しかし、この痛みを乗り越えた先に豊かな日本と強い円が待っている」 [237216734]
- 🍣にゃっはろ🌸~スシろ~🏡
- 中国人観光客のキャンセル率、ついに7割越えwwwwwwwwwwwwwwww [329329848]
- 🏡PUNCHマッチ💥🥊😅🥊💥超重量級決戦🏡
- 海外大手メディア、高市が中国に宣戦布告したと次々報道し始める。どんどん外堀が埋められる [931948549]
- 山上裁判証言「抗議文の受け取りを拒否した政治家は安倍晋三ただ一人」 [947332727]
