エスケープシーケンスやWin32APIなどの環境依存なものもOK
そのような質問は必ず環境を書きましょう
半角空白やタブでのインデントはスレに貼ると無くなります
コードを貼れる所
http://codepad.org/
https://ideone.com/
前スレ
【初心者歓迎】C/C++室 Ver.105【環境依存OK】
https://mevius.5ch.net/test/read.cgi/tech/1556142878/
【初心者歓迎】C/C++室 Ver.106【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
2020/07/13(月) 13:51:48.09ID:WBkWHxcT
2デフォルトの名無しさん
2020/07/13(月) 13:53:44.41ID:WBkWHxcT C言語を256倍使うための本
ttps://www.%61mazon.co.jp/dp/4756100430
詳説 C++ 第2版
ttps://www.%61mazon.co.jp/dp/479732743X
ttps://www.%61mazon.co.jp/dp/4756100430
詳説 C++ 第2版
ttps://www.%61mazon.co.jp/dp/479732743X
2020/07/13(月) 14:08:11.33ID:p1lvDPnd
C++20
https://ja.cppreference.com/w/cpp/compiler_support
https://ja.cppreference.com/
豆
http://www.open-std.org/
https://www.slideshare.net/KMC_JP/ss-45855264
https://ja.wikipedia.org/wiki/%E5%80%8D%E7%B2%BE%E5%BA%A6%E6%B5%AE%E5%8B%95%E5%B0%8F%E6%95%B0%E7%82%B9%E6%95%B0
https://ja.wikipedia.org/wiki/%E8%AA%A4%E5%B7%AE#%E8%A8%88%E7%AE%97%E8%AA%A4%E5%B7%AE%E3%81%AE%E7%A8%AE%E9%A1%9E
https://ja.cppreference.com/w/cpp/compiler_support
https://ja.cppreference.com/
豆
http://www.open-std.org/
https://www.slideshare.net/KMC_JP/ss-45855264
https://ja.wikipedia.org/wiki/%E5%80%8D%E7%B2%BE%E5%BA%A6%E6%B5%AE%E5%8B%95%E5%B0%8F%E6%95%B0%E7%82%B9%E6%95%B0
https://ja.wikipedia.org/wiki/%E8%AA%A4%E5%B7%AE#%E8%A8%88%E7%AE%97%E8%AA%A4%E5%B7%AE%E3%81%AE%E7%A8%AE%E9%A1%9E
2020/07/13(月) 14:09:20.92ID:p1lvDPnd
禿
https://ja.wikipedia.org/wiki/%E3%83%93%E3%83%A3%E3%83%BC%E3%83%8D%E3%83%BB%E3%82%B9%E3%83%88%E3%83%AD%E3%83%B4%E3%82%B9%E3%83%88%E3%83%AB%E3%83%83%E3%83%97
https://ezoeryou.github.io/cpp-intro/
https://ezoeryou.github.io/cpp17book/
https://ezoeryou.github.io/cpp14-appendix/
https://ezoeryou.github.io/cpp-book/C++11-Syntax-and-Feature.xhtml
https://ja.wikipedia.org/wiki/%E3%83%93%E3%83%A3%E3%83%BC%E3%83%8D%E3%83%BB%E3%82%B9%E3%83%88%E3%83%AD%E3%83%B4%E3%82%B9%E3%83%88%E3%83%AB%E3%83%83%E3%83%97
https://ezoeryou.github.io/cpp-intro/
https://ezoeryou.github.io/cpp17book/
https://ezoeryou.github.io/cpp14-appendix/
https://ezoeryou.github.io/cpp-book/C++11-Syntax-and-Feature.xhtml
2020/07/13(月) 14:14:23.03ID:+mCuetAH
2020/07/13(月) 14:17:35.80ID:+mCuetAH
2020/07/13(月) 16:28:13.78ID:srh9sya6
メンバに自クラスの配列を持つクラスのメンバ配列の初期化はc++ではどうやりますか?Javaでは下のように出来てます。
☆Javaでこうなっています
class A {
protected A[] node = new A[3];
}
☆c++でこうしたらエラーになりました。
@a.hpp
class A {
public:
static A node[];
};
@a.cpp
#include "a.hpp"
A A::node[] = new A[3];
ちなみに型Aを適当にintとかにしたらc++の方もいけました。
☆Javaでこうなっています
class A {
protected A[] node = new A[3];
}
☆c++でこうしたらエラーになりました。
@a.hpp
class A {
public:
static A node[];
};
@a.cpp
#include "a.hpp"
A A::node[] = new A[3];
ちなみに型Aを適当にintとかにしたらc++の方もいけました。
2020/07/13(月) 16:38:40.16ID:ny9O75E1
2020/07/13(月) 16:41:24.41ID:srh9sya6
10デフォルトの名無しさん
2020/07/13(月) 17:07:02.67ID:WBkWHxcT うまくいく例
class A {
public:
static A *node;
};
A *A::node = new A[3];
class A {
public:
static A *node;
};
A *A::node = new A[3];
2020/07/13(月) 17:22:15.52ID:ny9O75E1
staticにしない例
class A {
public:
A *node;
A();
};
A::A() {
node = new A[3];
}
class A {
public:
A *node;
A();
};
A::A() {
node = new A[3];
}
2020/07/13(月) 17:27:36.45ID:ny9O75E1
あ、ループしちゃった
2020/07/13(月) 17:30:23.80ID:KVdg44rD
>>9
> c++ではメンバに自クラスの変数がいるとダメなのですか?
そりゃだめだよ、もしそんなのができたら
class A {
A a;
int b;
};
A x;
とした時に x.b; x.a.b; x.a.a.b; ... みたいに無限に int b; を作る羽目になるから。
Javaなどは
class A {
A *a;
int b;
};
みたいなのしかできないから問題ないだけ。
> c++ではメンバに自クラスの変数がいるとダメなのですか?
そりゃだめだよ、もしそんなのができたら
class A {
A a;
int b;
};
A x;
とした時に x.b; x.a.b; x.a.a.b; ... みたいに無限に int b; を作る羽目になるから。
Javaなどは
class A {
A *a;
int b;
};
みたいなのしかできないから問題ないだけ。
2020/07/13(月) 17:33:49.37ID:17o/9bhC
C++のクラス変数とJavaのクラス変数の違い、だっけ。
端的に「C++ではnewなしにクラス変数を宣言して使える」ようにするため。
Javaと対比しながら説明する能力がないんで中途半端で悪いけど。
端的に「C++ではnewなしにクラス変数を宣言して使える」ようにするため。
Javaと対比しながら説明する能力がないんで中途半端で悪いけど。
1514
2020/07/13(月) 19:29:02.10ID:17o/9bhC × 変数を宣言
○ 変数を定義
中途半端な上に間違っててすまぬ。
あまつさえ細かい訂正のために貴重な投稿枠の浪費までも。
○ 変数を定義
中途半端な上に間違っててすまぬ。
あまつさえ細かい訂正のために貴重な投稿枠の浪費までも。
2020/07/14(火) 08:27:52.03ID:bhhAeN2N
>>14
クラス変数の問題ではなく、クラスのメンバとして配列を宣言した場合にC++では配列の実体をメンバとして持つのに対し、Javaでは配列の実体は別のところに作られて参照だけを持つというところでないの?
クラス変数の問題ではなく、クラスのメンバとして配列を宣言した場合にC++では配列の実体をメンバとして持つのに対し、Javaでは配列の実体は別のところに作られて参照だけを持つというところでないの?
2020/07/14(火) 08:30:26.07ID:5kZc9hZE
7の人です
みなさんありがとうございます
別のやり方考えます
みなさんありがとうございます
別のやり方考えます
2020/07/14(火) 09:28:38.75ID:PHX4w74f
19デフォルトの名無しさん
2020/07/14(火) 12:52:08.42ID:Mma3I+br C/C++ はヌルポを敢えて使う
2020/07/14(火) 23:49:13.61ID:PYLNqhFb
未定義動作
22はちみつ餃子 ◆8X2XSCHEME
2020/07/15(水) 01:04:37.36ID:hr2ndtrb23デフォルトの名無しさん
2020/07/15(水) 12:07:21.21ID:cL9c5hZ8 enum {hoge, fuga, hage};
で
hoge==0
fuga==1
hage==2
として使えるとして
0,1,2とかの数字から実行時にhoge,fuga,hageの名前を知りたい時って
何か便利なインターフェースありますか?
みんな毎回線形探索のコード描くみたいにやってる?
で
hoge==0
fuga==1
hage==2
として使えるとして
0,1,2とかの数字から実行時にhoge,fuga,hageの名前を知りたい時って
何か便利なインターフェースありますか?
みんな毎回線形探索のコード描くみたいにやってる?
2020/07/15(水) 12:39:32.75ID:fkxllX2L
2020/07/15(水) 12:50:24.76ID:Gd6Zo+Db
26デフォルトの名無しさん
2020/07/15(水) 13:02:12.66ID:cL9c5hZ8 連番じゃないときとか
結構でかい番号だったりするときは困りますね
結構でかい番号だったりするときは困りますね
27デフォルトの名無しさん
2020/07/15(水) 13:08:43.15ID:ONqo+DKP ##演算子でどうにかなるんじゃね
28デフォルトの名無しさん
2020/07/15(水) 13:14:49.36ID:jM1x+GOc IT掲示板群 ttp://x0000.net/forum.aspx?id=15
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
29デフォルトの名無しさん
2020/07/15(水) 13:38:14.90ID:cL9c5hZ8 線形探索するにしても enum 用に foreach もあるのかなと思ったのですが
http://sanichi999.hateblo.jp/entry/2014/12/19/011820
こんな感じですね
名前とか同じことを何度も書いてる気がしてしまうのと
割と定型な気がするのでコンパイラが提供してくれてないかなと思ったで質問しました
http://sanichi999.hateblo.jp/entry/2014/12/19/011820
こんな感じですね
名前とか同じことを何度も書いてる気がしてしまうのと
割と定型な気がするのでコンパイラが提供してくれてないかなと思ったで質問しました
30はちみつ餃子 ◆8X2XSCHEME
2020/07/15(水) 15:30:19.58ID:hr2ndtrb 実行時に列挙定数の名前の文字列が欲しいことがそんなにあるかな?
デバッグプリント用途くらいしか思いつかんのだけど。
デバッグプリント用途くらいしか思いつかんのだけど。
2020/07/15(水) 16:14:13.34ID:LgiIyt9Z
vector<int> a = {8, 1, 9, 5, 7, 3};
があるときに例えば
vector<int> b = a{0, 2, 5};
とかしたら
b が {8, 9, 3} の配列みたいになってくれる書き方ってありますか?
があるときに例えば
vector<int> b = a{0, 2, 5};
とかしたら
b が {8, 9, 3} の配列みたいになってくれる書き方ってありますか?
2020/07/15(水) 16:43:08.71ID:stUpixMt
vector<int> b = {a[0], a[2], a[5]};
33はちみつ餃子 ◆8X2XSCHEME
2020/07/15(水) 20:59:08.41ID:hr2ndtrb2020/07/15(水) 23:08:06.76ID:4eO2mC8f
>>31 for(int& e: b) e = a[e];
2020/07/16(木) 12:17:49.42ID:rBscjMJk
>>23
msvc/clangのc++17限定でよければ、nameof c++というライブラリがある。
msvc/clangのc++17限定でよければ、nameof c++というライブラリがある。
2020/07/16(木) 12:58:54.15ID:Bj5j4Y6i
>>33
https://ideone.com/x0lKkD
で
for(auto t: {indices...}) std::cout << source[t] << std::endl;
だと動くのですが
for(T t: {indices...}) std::cout << source[t] << std::endl;
だとエラーになります
どうして?
https://ideone.com/x0lKkD
で
for(auto t: {indices...}) std::cout << source[t] << std::endl;
だと動くのですが
for(T t: {indices...}) std::cout << source[t] << std::endl;
だとエラーになります
どうして?
37はちみつ餃子 ◆8X2XSCHEME
2020/07/16(木) 13:49:08.52ID:MICl0UeU2020/07/16(木) 15:12:49.52ID:sYAaUXpT
2020/07/17(金) 13:55:06.86ID:xXsIieN6
テンプレートが型付マクロにしかみえません
眼科に行った方が良いですか?
眼科に行った方が良いですか?
2020/07/17(金) 14:44:53.44ID:p55TjBUs
型付であることこそ重要です
2020/07/17(金) 17:27:51.73ID:LIcKojh8
マクロといってのcのマクロではなくlispのマクロ的な機能
まあコンパイル時の制限はあるけど
まあコンパイル時の制限はあるけど
42デフォルトの名無しさん
2020/07/18(土) 01:05:56.87ID:vSXqjqjP Win32APIでコンボボックスの値をオーナードローしているんですが、wchar_tで項目追加すると文字の描画ができるんですが、
c_str()だと文字化けします。何故ですか?
・WM_INITDIALOG
文字化けしないケース
const wchar_t *a = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(a));
文字化けするケース
std::wstring b = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(b.c_str()));
・WM_DRAWITEM
DrawText(lpDraw->hDC, (wchar_t*)lpDraw->itemData, -1, &r2, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
c_str()だと文字化けします。何故ですか?
・WM_INITDIALOG
文字化けしないケース
const wchar_t *a = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(a));
文字化けするケース
std::wstring b = L"あいうえお";
SendMessage(hForeColor, CB_ADDSTRING, 0, LPARAM(b.c_str()));
・WM_DRAWITEM
DrawText(lpDraw->hDC, (wchar_t*)lpDraw->itemData, -1, &r2, DT_LEFT | DT_VCENTER | DT_SINGLELINE);
2020/07/18(土) 01:43:29.19ID:2xoJksuz
表示する時にはbが解放されてるんじゃないの?
2020/07/18(土) 02:35:10.07ID:IdAxqtyn
オーナードローの時、CBS_HASSTRINGSスタイル指定しないと、そんな感じになるっぽいね
CB_ADDSTRINGメッセージに書いてあるね
CB_ADDSTRINGメッセージに書いてあるね
45デフォルトの名無しさん
2020/07/18(土) 13:25:54.56ID:94poIsAY 1つの言語をある程度やりこまないと能力値がリセットされますか?
46デフォルトの名無しさん
2020/07/18(土) 13:38:50.50ID:uRU3MGLx 理解する能力と
使いこなす能力と
創造する能力は
全部別
使いこなす能力と
創造する能力は
全部別
47デフォルトの名無しさん
2020/07/18(土) 15:42:57.82ID:94poIsAY 理解力のことです
ごめんなさい
ごめんなさい
2020/07/18(土) 15:58:14.32ID:qVma+RcU
リセットはされない。
複数言語を学ぶときは並行にやって混乱するか順番にやって混乱するかのどちらか。
自分に向いた方を選べ。
複数言語を学ぶときは並行にやって混乱するか順番にやって混乱するかのどちらか。
自分に向いた方を選べ。
2020/07/18(土) 16:14:37.72ID:C0jdHcgs
ある程度やりこまなければある程度落ちるのは常識
ある程度やりこめばある程度上がるのも常識
ある程度やりこめばある程度上がるのも常識
2020/07/18(土) 17:22:27.13ID:Bt+NBO6d
>>45
リセットされたのではなく、自分が理解できていたと思い込んでいただけで実際の理解がその程度だったということに気づかされただけだと思うぞ。
リセットされたのではなく、自分が理解できていたと思い込んでいただけで実際の理解がその程度だったということに気づかされただけだと思うぞ。
51デフォルトの名無しさん
2020/07/18(土) 18:01:57.62ID:51enBbxV あるある
2020/07/18(土) 18:20:51.79ID:sJrDCvPM
fopenでccs=utf-8を指定して改行コードのCRLFをfputwsで書き込んだら
CRCRLFになったんですけど。バグですか?
CRCRLFになったんですけど。バグですか?
53デフォルトの名無しさん
2020/07/18(土) 18:38:01.13ID:yqiH8/gB appendで開いてたり
54蟻人間 ◆T6xkBnTXz7B0
2020/07/18(土) 18:39:23.19ID:5h3AvQ+O2020/07/18(土) 19:04:26.79ID:sJrDCvPM
何と!
2020/07/18(土) 19:10:12.51ID:tp8HW1uL
バイナリじゃなく、テキスト処理してる場合は、
各OS のAPI を使った時に、
Windows なら、CRLF になって、
Linux なら、LF になるのだろう
Ruby でもそう。
Windows にインストールしたものは、CRLF になって、
Linux にインストールしたものは、LF になる
各OS のAPI を使った時に、
Windows なら、CRLF になって、
Linux なら、LF になるのだろう
Ruby でもそう。
Windows にインストールしたものは、CRLF になって、
Linux にインストールしたものは、LF になる
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 🇺🇸🇨🇳米中関係は「極めて強固」とトランプ氏… ★6 [BFU★]
- SuicaとPASMOのコード決済「teppay(テッペイ)」26年秋開始 🐧🤖 [少考さん★]
- 【フジ】クリスマスイブ恒例の「明石家サンタ」見送りへ 今年は「お笑い向上委員会」SP放送 [征夷大将軍★]
- 【足立区暴走11人死傷】歩行者はねた後も減速せず…精神疾患がある37歳男「車で神奈川の山の方に行きたいと思った」 [ぐれ★]
- 「ホストに貢ぎたい」と海外で売春する日本人女性 2カ月で2千万円稼ぐケースも [1ゲットロボ★]
- 【速報】外務次官が中国大使と面会 [蚤の市★]
- 台湾「習主席がトランプ大統領との電話会談で台湾問題を言及しなかったことは台湾にとって最良の結果」高市ハシゴ外されるwwwww [931948549]
- 【高市速報】コンバースのスニーカーが再びブームに🔥🔥wwwwwwwwwwwwwwww ここに着て履いてるやつが爆増 [573041775]
- お前らって困ったときに助けてくれる人いる?
- 唐揚げ作る時に入れたら美味そうなものなに
- 【速報】山上徹也、安倍晋三ビデオ動画で「絶望」、裁判で証言 [947332727]
- ウクライナ、事実上の降伏。プーアノンと呼ばれていた人たちだけが世界情勢を俯瞰的に見ていた [805596214]
