!extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを2行書き込んでください)
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C17
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4713.pdf
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C23 最新ドラフト
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3047.pdf
C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/
※前スレ
C言語なら俺に聞け 159
https://mevius.5ch.net/test/read.cgi/tech/1659623547/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C言語なら俺に聞け 160
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ワッチョイ ff63-dxp0)
2022/12/28(水) 10:40:30.02ID:PyoNDBFu02デフォルトの名無しさん (アウアウウー Sa1f-SHOq)
2022/12/28(水) 15:59:24.74ID:wx2BQ76Ga int main(int a, char **p)
{
return main(a, b);
}
{
return main(a, b);
}
3デフォルトの名無しさん (ワンミングク MMff-iijX)
2022/12/28(水) 18:11:21.62ID:pBXtb3fmM 黄金分割の無限連分数を関数化してみて
4デフォルトの名無しさん (ワッチョイ 6d5f-MkkF)
2022/12/29(木) 09:42:45.42ID:USBo1Zkr0 const char *f() {return "黄金分割の無限連分数";}
5デフォルトの名無しさん (ワッチョイ b363-dxp0)
2022/12/29(木) 10:14:02.92ID:A5fQk0bK0 再帰でたのむわ
6デフォルトの名無しさん (ブーイモ MMb3-tgY1)
2022/12/29(木) 10:20:47.88ID:xv5xMvYFM void main() {printf("黄金分割"); f();}
void f() {printf("の連分数"); f();}
void f() {printf("の連分数"); f();}
7デフォルトの名無しさん (ワッチョイ 3f27-GdtN)
2022/12/29(木) 10:57:41.34ID:wDakQQO90 chatGPTに聞けばやってくれそう
8デフォルトの名無しさん (ワッチョイ 9fea-ij7E)
2022/12/29(木) 18:48:24.02ID:pXMac1y709デフォルトの名無しさん (ワッチョイ b363-dxp0)
2022/12/30(金) 11:34:59.93ID:mcisYiLr0 >>8
Good!
Good!
10デフォルトの名無しさん (ワッチョイ a1c2-dmhP)
2022/12/30(金) 23:53:32.59ID:4Hd9NmeQ0 2.c:3:16: error: 'b' undeclared (first use in this function)
3 | return main(a, b);
| ^
2.c:3:16: note: each undeclared identifier is reported only once for each function it appears in
3 | return main(a, b);
| ^
2.c:3:16: note: each undeclared identifier is reported only once for each function it appears in
11デフォルトの名無しさん (ワッチョイ c12d-tb1I)
2023/01/07(土) 08:38:32.97ID:kxyDDio80 qsort(P, q, sizeof(int*), (int (*)(const void*, const void*)) [](const void* a, const void* b) -> int {
int* A = *(int**) a;
int* B = *(int**) b;
return A[0] - B[0];
});
chatGPTがこういうqsort関数の呼び出しを書いてくれる
ぜひC27くらいで導入してほしい
int* A = *(int**) a;
int* B = *(int**) b;
return A[0] - B[0];
});
chatGPTがこういうqsort関数の呼び出しを書いてくれる
ぜひC27くらいで導入してほしい
12デフォルトの名無しさん (ワッチョイ 0101-K0Bq)
2023/01/07(土) 10:27:43.50ID:+0z9mIba0 比較関数はそれでいいの? 差がINT_MAX超えると逆に並ぶ
13デフォルトの名無しさん (ワッチョイ 515f-vxq+)
2023/01/10(火) 21:58:11.83ID:DXY/Xi/G0 数年後はChatGPTの呪文をデバッグしてそう
14デフォルトの名無しさん (アウアウウー Sa85-DH5p)
2023/01/11(水) 12:02:46.97ID:6xJiw1N1a Cのコードだけど
C言語スレにふさわしい話題ではないな
C言語スレにふさわしい話題ではないな
15デフォルトの名無しさん (スッップ Sdb3-A8+7)
2023/01/13(金) 19:48:01.29ID:iXVYq/lpd 再起的に性器分布から確率密度値をランダムにサンプリングする関数がほしいニダ
直前にコールされたときの値は記憶してね💛
直前にコールされたときの値は記憶してね💛
16デフォルトの名無しさん (ラクッペペ MM4b-5Yp/)
2023/01/13(金) 20:26:08.58ID:gif78BskM 日本語でおk
17デフォルトの名無しさん (スッップ Sdea-2YtF)
2023/01/14(土) 11:01:54.57ID:g07YtgxYd 正規分布の誤変換なのか語尾のせいでわからないw
18デフォルトの名無しさん (ワッチョイ 8663-f6s+)
2023/01/14(土) 11:04:00.00ID:+pThzqrz0 最初の三文字からして、釣りネタだろ
19デフォルトの名無しさん (ワッチョイ caad-f6s+)
2023/01/15(日) 04:48:51.36ID:FV+qvPCN0 ・ 性器分布と聞いて思い浮かんだイメージ
海底にチンアナゴが沢山居て出たり引っ込んだりしている分布
海底にチンアナゴが沢山居て出たり引っ込んだりしている分布
20デフォルトの名無しさん (ワッチョイ caad-f6s+)
2023/01/15(日) 05:05:09.71ID:FV+qvPCN0 とりあえずこれ置いときますね
https://www.youtube.com/watch?v=tIeMhy9GUhY
https://www.youtube.com/watch?v=tIeMhy9GUhY
21デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/15(日) 08:54:36.86ID:M5zlS1BDM 正規分布の確率密度なら普通に数式通りに計算すればいいのでは?
むしろ再帰をどう適用するつもりなのか
むしろ再帰をどう適用するつもりなのか
22デフォルトの名無しさん (ワッチョイ beda-jwHR)
2023/01/15(日) 09:27:19.76ID:z0zOI9oe0 とりあえず正規分布
https://i.imgur.com/Z91Wmz8.png
https://i.imgur.com/Z91Wmz8.png
23デフォルトの名無しさん (ワンミングク MM5a-N6nD)
2023/01/15(日) 13:25:21.78ID:0xsDPySbM サイコロ振って分布を見たい、みたいな
24デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/15(日) 13:42:42.59ID:5klY35UvM サイコロ1個の目の数の分布なら(離散値の)一様分布
複数個の数の和の分布なら二項分布
複数個の数の和の分布なら二項分布
25デフォルトの名無しさん (ワッチョイ dd27-Vk3+)
2023/01/15(日) 14:06:44.15ID:vaG+Vs8v0 再帰の意味がわからない
26デフォルトの名無しさん (アウアウウー Sa91-EFAO)
2023/01/15(日) 14:11:11.67ID:PioulXaba 積分を実際に加算して計算したいとか
27デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/15(日) 14:22:16.42ID:9Qv+ZusJM そうであれば確率密度値ではなく確率分布とか確率密度分布とか言うだろう
28デフォルトの名無しさん (ワッチョイ ed01-hn8B)
2023/01/15(日) 21:27:39.66ID:OcPQbdGC0 確率密度値をランダムにサンプリングする関数
ってのが意味不明すぎて困る
ってのが意味不明すぎて困る
29デフォルトの名無しさん (スッップ Sdea-2YtF)
2023/01/16(月) 08:01:21.89ID:UgMRct9ad 乱数が本当に乱数だと思ってるんだろう
30デフォルトの名無しさん (スプッッ Sdea-X4Hx)
2023/01/16(月) 08:48:46.93ID:V46d3ae6d 今時エントロピー源には困らんだろ
31デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/16(月) 08:57:16.53ID:kyliMul9M 情報源なら分かるがエントロピー源って何だ?
エントロピーって沸いたり消えたりするものではないだろ
エントロピーって沸いたり消えたりするものではないだろ
32デフォルトの名無しさん (オッペケ Sr6d-/dxN)
2023/01/16(月) 09:11:22.68ID:sSKEF+K2r 許してやってくれ
彼はそれっぽい言葉を使ってそれっぽく見せることしかできないんだ
彼はそれっぽい言葉を使ってそれっぽく見せることしかできないんだ
33デフォルトの名無しさん (スプッッ Sdea-X4Hx)
2023/01/16(月) 09:24:27.05ID:V46d3ae6d 小馬鹿にしたつもりになっているようだが
無知すぎるにも程がある
せめてググってから来い
無知すぎるにも程がある
せめてググってから来い
34デフォルトの名無しさん (ワッチョイ 9569-hn8B)
2023/01/16(月) 10:01:35.01ID:m77OBURW0 -∞ to +∞ の一様乱数を x に与えて 正規分布の確率密度関数の値 F(x) を戻せばいいのか?
ただ、ここに再帰の入り込む余地があるかというと・・・?
ただ、ここに再帰の入り込む余地があるかというと・・・?
35デフォルトの名無しさん (スッップ Sdea-2YtF)
2023/01/16(月) 12:53:16.69ID:UgMRct9ad >>30
それでも本当の乱数にはほど遠い
それでも本当の乱数にはほど遠い
36デフォルトの名無しさん (ワッチョイ 8a97-N6nD)
2023/01/16(月) 13:09:48.61ID:TL36GIFF0 一週間後にまた来てください
本当の乱数をご馳走しますよ
本当の乱数をご馳走しますよ
37デフォルトの名無しさん (ワッチョイ 4aa5-7DGa)
2023/01/16(月) 13:12:45.03ID:aMx9f9AG0 核物質を一週間で用意できるのか
何者だよお前
何者だよお前
38デフォルトの名無しさん (スプッッ Sdca-X4Hx)
2023/01/16(月) 13:32:43.95ID:4ZJ23LCrd Core-i7にアメリシウムなんか使っとらんだろw
39デフォルトの名無しさん (オッペケ Sr6d-/dxN)
2023/01/16(月) 13:34:52.65ID:PlpgBGzQr 疑似乱数で十分だろ
40デフォルトの名無しさん (アウアウウー Sa91-ue0x)
2023/01/16(月) 14:31:29.30ID:76DWjDYoa >>36
クッソ、先に書かれたw
クッソ、先に書かれたw
41デフォルトの名無しさん (スプッッ Sdea-X4Hx)
2023/01/16(月) 14:32:58.55ID:SiDXGlHEd おととい来い
42デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/16(月) 21:36:15.99ID:g4WuDF5W0 エントロピーって乱雑さのことだろ
温度は熱さ
エントロピー源は「温度源」と同じ分類のワードだな
なにそれ
温度は熱さ
エントロピー源は「温度源」と同じ分類のワードだな
なにそれ
43デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/16(月) 21:37:06.90ID:g4WuDF5W0 ま、どうでもいいがw
44デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/16(月) 22:09:50.55ID:M8pzDDkF0 せめてググってから来いと言ってるだろ
ドヤ顔で無自覚に恥を晒してんじゃねえ
アホをニヤニヤ眺めるのは基本的に楽しいが
おまえはその域にさえ達していない
・・・あ、もしかしてアドレスがハッシュだとか熱弁してたやつか?w
ドヤ顔で無自覚に恥を晒してんじゃねえ
アホをニヤニヤ眺めるのは基本的に楽しいが
おまえはその域にさえ達していない
・・・あ、もしかしてアドレスがハッシュだとか熱弁してたやつか?w
45デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/16(月) 23:13:48.33ID:g4WuDF5W0 ググったけど特にメジャーではなさそうだったからさぁ
そもそも日本語としておかしいからそりゃそうだわな
そもそも日本語としておかしいからそりゃそうだわな
46デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/16(月) 23:34:13.74ID:M8pzDDkF0 解りたくなきゃ無理強いはせんよ
47デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/16(月) 23:37:03.55ID:M8pzDDkF0 ただし、おまえは明白にスレ違い
ここにいちゃいけないやつだ
ここにいちゃいけないやつだ
48デフォルトの名無しさん (ガックシ 06de-Vk3+)
2023/01/16(月) 23:48:27.10ID:e7vknMD06 乱雑さという意味だとまでわかっててなんで乱数に関係ないと思うのか
49デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 00:23:19.36ID:NbLfYJo10 温度源ってワードでも温度に関係あることはわかるわな
そんなワードの意味は知らんがw
そんなワードの意味は知らんがw
50デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 00:25:59.94ID:NbLfYJo10 あぁ、そもそもエントロピーという情報理論の用語を知らないって思われてたのか
ずれまくってんなぁ
ずれまくってんなぁ
51デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 00:29:29.11ID:NbLfYJo10 ま、どうでもいいがw
52デフォルトの名無しさん (ワッチョイ 1d33-QU2M)
2023/01/17(火) 00:43:55.83ID:rXuvIeDS0 エントロピは示量変数。
53デフォルトの名無しさん (オッペケ Sr6d-/dxN)
2023/01/17(火) 01:32:28.46ID:PP1OxyD+r >>15
このガイジからここまで話が続くのか
このガイジからここまで話が続くのか
54デフォルトの名無しさん (アウアウウー Sa91-HawO)
2023/01/17(火) 01:34:39.07ID:95BFMKQNa 誰も質問しないんだからしゃーない
55デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/17(火) 02:51:47.32ID:Gx/YbyWZM 温度なら熱源
エントロピーなら情報源
温度源やエントロピー源などという用語を使うから意味がおかしくなるんだよ
エントロピーなら情報源
温度源やエントロピー源などという用語を使うから意味がおかしくなるんだよ
56デフォルトの名無しさん (スプッッ Sdea-X4Hx)
2023/01/17(火) 09:48:14.76ID:3c3JVziNd 今さらググって現実を知っても
もう引っ込みつかねえんだろ
掠りもしてねえ戯れ言を垂れ流すのやめろ
迷惑だ
もう引っ込みつかねえんだろ
掠りもしてねえ戯れ言を垂れ流すのやめろ
迷惑だ
57デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/17(火) 09:57:56.10ID:m9MGzG4NM プログラマなら用語の定義ぐらい意識しろ
適当なオレオレ用語でゴリ押しするなよ
適当なオレオレ用語でゴリ押しするなよ
58デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/17(火) 10:02:11.86ID:m9MGzG4NM 発端は>>30,31
59デフォルトの名無しさん (スプッッ Sdea-X4Hx)
2023/01/17(火) 11:39:38.82ID:nJRrUvNbd ここはプログラム技術板だ
物理の話と勘違いしたバカが
いつまでも粘着してんな
物理の話と勘違いしたバカが
いつまでも粘着してんな
60デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/17(火) 11:46:06.94ID:7cX8bkR/M エントロピーは物理学の熱力学や統計力学にもあるが今の話題は情報工学や計算機科学の話だろ
61デフォルトの名無しさん (ワッチョイ beda-jwHR)
2023/01/17(火) 11:56:11.18ID:qLv85Q5t062デフォルトの名無しさん (ワッチョイ b55f-wtyD)
2023/01/17(火) 12:29:08.74ID:zIKNxshB0 エントロピッピがさぁ
63デフォルトの名無しさん (ワッチョイ 86ce-Ras6)
2023/01/17(火) 14:11:24.27ID:glU0Oufn0 エントロピー原
M-1グランプリに出てそう
M-1グランプリに出てそう
64デフォルトの名無しさん (オッペケ Sr6d-hn8B)
2023/01/17(火) 15:48:56.91ID:WdSY+dYLr 人力のキーボードタイプ操作やマウス操作を種にして
自然の熱雑音をサンプリングして
・・・
自然の熱雑音をサンプリングして
・・・
65デフォルトの名無しさん (スプッッ Sdca-X4Hx)
2023/01/17(火) 16:23:52.80ID:A2sb5i63d ハードやらんやつにはわからんよな
66デフォルトの名無しさん (アウアウウー Sa91-HawO)
2023/01/17(火) 20:13:41.53ID:reGY8TLTa 弄られたくなきゃ言葉の定義くらい考えてからレスしな?w
67デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 20:18:34.57ID:qA7lxKdi0 無知晒して何も言い返せないバカは他人のことよりまず自分の心配をしな
68デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 20:22:19.75ID:qA7lxKdi0 ここをどこだと思っている
プログラム技術ねえやつは底辺の二番底だ
プログラム技術ねえやつは底辺の二番底だ
69デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 20:23:55.07ID:NbLfYJo10 変に反応し続ける割にはGoogleに責任を押し付けるばかりでここまで情報量ゼロだもんな
温度源みたいな謎ワードと同類ではないということを示すロジックがあるなら示して頂こうか
温度源みたいな謎ワードと同類ではないということを示すロジックがあるなら示して頂こうか
70デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 20:31:29.99ID:qA7lxKdi0 本当の乱数とエントロピーで何の話かわからなかった白痴に情報なんかいらねえだろ
豚に真珠ってやつだ
豚に真珠ってやつだ
71デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 20:41:17.67ID:NbLfYJo10 このように反応する割にはなんの弁明もなくレッテル張るだけなんです。
これをまさしく「悪あがき」というのでしょう。
これをまさしく「悪あがき」というのでしょう。
72デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 20:42:50.74ID:qA7lxKdi0 乱数とエントロピーの関係がわからんやつを
プログラム技術板でバカと言うことの何が悪あがきなんだか
バカで済んでることに感謝しろや
プログラム技術板でバカと言うことの何が悪あがきなんだか
バカで済んでることに感謝しろや
73デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 20:48:05.96ID:NbLfYJo10 誤解のフリをして突かれている部分を誤魔化していますがそのような安易な策が通じると思っているのでしょうかね
ま、思っているからこそ実践しているのでしょう。
ま、思っているからこそ実践しているのでしょう。
74デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 20:51:55.91ID:qA7lxKdi0 エントロピーを物理の話と誤解したバカが何を誤魔化したいの?
自らの精神分析を俺に聞かされても困るんだが
自らの精神分析を俺に聞かされても困るんだが
75デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 21:00:12.90ID:NbLfYJo10 いえいえ、そのようなことはございませんよ
どの辺でそのように判断されたのか是非お聞かせください。
もちもん、特になければ今まで通り一方通行でお話しを続けられても構いません
どの辺でそのように判断されたのか是非お聞かせください。
もちもん、特になければ今まで通り一方通行でお話しを続けられても構いません
76デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 21:05:58.17ID:qA7lxKdi0 まあ匿名掲示板だからね
シラを切れば全てをリセットできる
今までの引っ込み付かなくなったあんたがいなくなって
マトモな別人になってくれるならこっちもありがたい
シラを切れば全てをリセットできる
今までの引っ込み付かなくなったあんたがいなくなって
マトモな別人になってくれるならこっちもありがたい
77デフォルトの名無しさん (ワッチョイ ed01-UgkG)
2023/01/17(火) 21:23:04.17ID:KfRCDoQT0 まあ熱雑音も実際には色つきであって
全てのバンドを網羅する白色ではないわけだが
目的用途によってはそれでも十分に乱れてる扱い出来ると
全てのバンドを網羅する白色ではないわけだが
目的用途によってはそれでも十分に乱れてる扱い出来ると
78デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 21:30:32.61ID:NbLfYJo10 このように度々挙がっております指摘についての弁明を避け続ける一方で根拠に乏しい我々側の非についてはひたすら高々と掲げる様子を平仮名5文字でたしか何と言うのでしたっけ。。。
79デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 21:40:03.07ID:qA7lxKdi0 熱雑音をどうやってプログラムに使うか知らんやつのお花畑妄想w
80デフォルトの名無しさん (アウアウウー Sa91-HawO)
2023/01/17(火) 21:40:34.37ID:4lzoCN/Pa >シラを切れば全てをリセットできる
なるほど
まさにそれを自身で実践していると言うわけだ
表明助かる
なるほど
まさにそれを自身で実践していると言うわけだ
表明助かる
81デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 21:41:41.53ID:qA7lxKdi0 クオークの色とかと勘違いしてそうだなw
82デフォルトの名無しさん (アウアウウー Sa91-HawO)
2023/01/17(火) 21:44:32.57ID:4lzoCN/Pa 突然クオークとか言い出すあたりもう末期でしょ
もっとちゃんとシラを切り通さないと
もっとちゃんとシラを切り通さないと
83デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 21:49:41.96ID:qA7lxKdi0 熱雑音と言い出したどの口で言うのか
まだ乱数とエントロピーの違いがわからんやつが
乱数とクオークの違いなんかわかるわけねえだろバーカw
まだ乱数とエントロピーの違いがわからんやつが
乱数とクオークの違いなんかわかるわけねえだろバーカw
84デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 21:51:17.07ID:qA7lxKdi0 で、まだやんの?
豚に真珠つーたろ
おまえにくれてやるのは罵声だけだぞ
大義名分のある罵声だ
プログラム技術板から出て行け
豚に真珠つーたろ
おまえにくれてやるのは罵声だけだぞ
大義名分のある罵声だ
プログラム技術板から出て行け
85デフォルトの名無しさん (アウアウウー Sa91-HawO)
2023/01/17(火) 21:55:32.49ID:DPhLiFAha 「熱雑音」でスレ内検索したら>>64が出てきた
おい、おまえなんか言われてんぞ
おい、おまえなんか言われてんぞ
86デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 22:02:12.15ID:NbLfYJo10 この乱文ぷりを見るに例のレスも同じように何も考えずに書かれたのでしょうねぇ
そしてその雑さ原因の指摘に腹を立てて喚き散らかすと
もはや救いようがありません。
そしてその雑さ原因の指摘に腹を立てて喚き散らかすと
もはや救いようがありません。
87デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 22:23:55.68ID:qA7lxKdi0 プログラム技術板の汚点め
88デフォルトの名無しさん (アウアウウー Sa91-HawO)
2023/01/17(火) 22:27:26.96ID:F7Tmfdoea エントロピー源があるならエントロピーシンクもあるのかね
89デフォルトの名無しさん (オッペケ Sr6d-/dxN)
2023/01/17(火) 22:29:34.40ID:HUr0VOMtr この手の論争は暴言吐いたやつほど負けに近づくわな
自分の意見を補強できないからその手段に行き着くわけで
自分の意見を補強できないからその手段に行き着くわけで
90デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 22:38:18.91ID:qA7lxKdi0 無知すぎるやつが自分た人様にバカと言えるかどうかの自信さえない構図
場違いとわかっってんならさっさと失せろ
場違いとわかっってんならさっさと失せろ
91デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 22:40:55.49ID:qA7lxKdi0 情報乞食としての収穫も絶望的なのに
いつまで縋りついてんだよキモすぎ産廃が
いつまで縋りついてんだよキモすぎ産廃が
92デフォルトの名無しさん (ワッチョイ 1dc2-K8ze)
2023/01/17(火) 22:42:21.14ID:qA7lxKdi093デフォルトの名無しさん (アウアウウー Sa91-HawO)
2023/01/17(火) 23:11:09.87ID:vHSNNv2Oa 壊れたレイディオ
94デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/17(火) 23:31:07.10ID:NbLfYJo10 結局情報量ゼロのまま終わってしまいました。
95デフォルトの名無しさん (ワッチョイ b55f-wtyD)
2023/01/18(水) 00:55:14.82ID:tqUHEoCQ0 このスレのエントロピーも増大しています><
96デフォルトの名無しさん (テテンテンテン MMde-tpib)
2023/01/18(水) 00:59:14.46ID:lSAVVSLnM 本当の乱数なんて要らん
要は直近の乱数が予測困難であれば良いわけで、周期が長ければ予測が困難だ
使い方が間違ってて短周期になってしまうというセキュリティホールは見たことがある
要は直近の乱数が予測困難であれば良いわけで、周期が長ければ予測が困難だ
使い方が間違ってて短周期になってしまうというセキュリティホールは見たことがある
97デフォルトの名無しさん (スプッッ Sdca-X4Hx)
2023/01/18(水) 07:11:22.38ID:fdV9KSWzd 某アンチウイルスソフトが乱数エンジンのシードにtime()を使ってて
ブルートフォース攻撃に脆いのを指摘されてたね
ブルートフォース攻撃に脆いのを指摘されてたね
98デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/18(水) 08:29:54.30ID:eLBB0cr+M >>95
熱力学と違って情報理論では1を超えることは無い
熱力学と違って情報理論では1を超えることは無い
99デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/18(水) 08:31:57.59ID:eLBB0cr+M すまん
情報量が超えることは無いがエントロピーならあり得るわ
情報量が超えることは無いがエントロピーならあり得るわ
100デフォルトの名無しさん (ワッチョイ c602-Cqve)
2023/01/18(水) 10:46:50.42ID:cd+i1czb0 USBで挿せる便利なサイコロあるぞ
101デフォルトの名無しさん (スフッ Sdea-2BPg)
2023/01/18(水) 17:07:41.15ID:A9TOq90hd const修飾子とポインタの関係がややこしい
102デフォルトの名無しさん (スップ Sdea-3JZN)
2023/01/18(水) 18:41:44.13ID:bRSYEzcmd なーんだ待ってたのにまだ出来ないのー? >>15
あくしろよ
正規分布からランダムにサンプリングするだけでしょ?
再帰的と書いたのはコード量を抑えたい、と言う理由なのよー
ボックスミューラーは使わないよね
あくしろよ
正規分布からランダムにサンプリングするだけでしょ?
再帰的と書いたのはコード量を抑えたい、と言う理由なのよー
ボックスミューラーは使わないよね
103デフォルトの名無しさん (ワッチョイ 86cf-7DGa)
2023/01/18(水) 18:50:52.54ID:pc+7EyEW0 共用体を使ってるコードを見たことないんだけど具体的に何に使えてどう使うの?
104デフォルトの名無しさん (ワッチョイ b55f-wtyD)
2023/01/18(水) 18:52:25.38ID:tqUHEoCQ0 const char *f() {f(); return "再起的に性器分布から確率密度値を...してね";}
105デフォルトの名無しさん (ワッチョイ 8663-f6s+)
2023/01/18(水) 18:59:51.47ID:aaaF5ns00106デフォルトの名無しさん (ワッチョイ c602-Cqve)
2023/01/18(水) 19:41:20.50ID:cd+i1czb0 逆に真の乱数をサンプリングし、大数の法則を期待して正規分布を得てみたい
とふと思いました
とふと思いました
107デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/18(水) 20:07:07.68ID:5annSIeD0 共用体はビットレベルでフォーマットが決まってる時に使う
108デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/18(水) 20:07:28.64ID:5annSIeD0 通信やバイナリファイルなど
109デフォルトの名無しさん (スッップ Sdea-2YtF)
2023/01/18(水) 21:01:43.52ID:6nsqd3vSd 共用体で定義すればキャストを使った汚いコードを書かなくて済む
しかし共用体も今日ではあまりエレガントとも言えないのでは
しかし共用体も今日ではあまりエレガントとも言えないのでは
110デフォルトの名無しさん (ワッチョイ a501-7DGa)
2023/01/18(水) 21:24:32.21ID:ZQLfTfm70 人間が入力するときに
コントロールコードとかも拾いたい時があるからなあ
文字列だけではうまくいかない
コントロールコードとかも拾いたい時があるからなあ
文字列だけではうまくいかない
111デフォルトの名無しさん (ワッチョイ 2a47-w88e)
2023/01/18(水) 21:41:20.89ID:4Z5GD2tK0 >>107-108
エンディアン独立ですか?
エンディアン独立ですか?
112デフォルトの名無しさん (ワッチョイ 8663-f6s+)
2023/01/18(水) 21:50:27.28ID:aaaF5ns00 良い質問だ、自分で調べると勉強になる
113デフォルトの名無しさん (ワッチョイ ed01-UgkG)
2023/01/18(水) 22:02:01.63ID:XcLAtUHa0 ソケットのINETADDRで
114デフォルトの名無しさん (ワッチョイ beda-jwHR)
2023/01/18(水) 22:16:14.48ID:fAl7sUlA0 組込み用途ではSFRのアドレス番地に割り当てた変数に対して
char型と8bitのビットフィールド構造体の共用体
short型とchar型2要素の配列と16bitのビットフィールド構造体の共用体
などがよく使われる
char型と8bitのビットフィールド構造体の共用体
short型とchar型2要素の配列と16bitのビットフィールド構造体の共用体
などがよく使われる
115デフォルトの名無しさん (ワッチョイ cd35-5Koo)
2023/01/18(水) 23:16:00.76ID:5annSIeD0 自分のところのプロジェクトでは構造体でキャストする式にマクロで名前をつけてるな
116デフォルトの名無しさん (ワッチョイ a501-7DGa)
2023/01/19(木) 00:26:10.20ID:SdwPSqPz0 昔のcobolのコードが生きていて
メモリを節約するために領域を再利用している
可能性はあるな
書き直した方がましだが
メモリを節約するために領域を再利用している
可能性はあるな
書き直した方がましだが
117デフォルトの名無しさん (ワッチョイ 9569-hn8B)
2023/01/19(木) 08:31:08.40ID:m5q+i06r0 >正規分布からランダムにサンプリングするだけでしょ?
>ボックスミューラーは使わないよね
なんかおかしくない?
前者は正規分布関数の値をランダムに抽出する 値域は 0 ~0.3989
後者は分布が正規分布となる乱数 値域は -∞ ~ ∞ (実用的には -4 ~ 4)
>ボックスミューラーは使わないよね
なんかおかしくない?
前者は正規分布関数の値をランダムに抽出する 値域は 0 ~0.3989
後者は分布が正規分布となる乱数 値域は -∞ ~ ∞ (実用的には -4 ~ 4)
118デフォルトの名無しさん (ラクッペペ MMde-VZwO)
2023/01/19(木) 08:56:49.28ID:ePSJbuliM119デフォルトの名無しさん (スップ Sdea-3JZN)
2023/01/19(木) 15:11:00.82ID:TnS/SbOWd 違う、、、そうじゃ無い、、、
120デフォルトの名無しさん (スップ Sdea-3JZN)
2023/01/19(木) 15:12:40.77ID:TnS/SbOWd >>118
話題のdiffusion model のコードを書いてるの
話題のdiffusion model のコードを書いてるの
121デフォルトの名無しさん (オッペケ Sr6d-/dxN)
2023/01/19(木) 20:45:09.38ID:LuniV29Gr 大した精度は必要ないだろうし簡単なやつ探せば?
122デフォルトの名無しさん (ワッチョイ 9510-f6s+)
2023/01/20(金) 13:52:09.56ID:KaoK9Arp0 8bit時代にBASICのRND関数をアセンブラから呼び出す方法知らなくて、
ROM上のバイナリーデータから乱数作るルーチン組んだの思い出した。
(ROMから2バイトxn個のデータとって前回出力した値に足したりXORしたりと)
16bit DOS環境になっても似たようなの作ったなぁ(ROMの代わりに乱数表?作った)。
ROM上のバイナリーデータから乱数作るルーチン組んだの思い出した。
(ROMから2バイトxn個のデータとって前回出力した値に足したりXORしたりと)
16bit DOS環境になっても似たようなの作ったなぁ(ROMの代わりに乱数表?作った)。
123デフォルトの名無しさん (ワッチョイ cd91-rGbT)
2023/01/20(金) 13:55:55.25ID:PBwN2qBR0 ROMから取り出しだと値が偏ったりしないかな?
124デフォルトの名無しさん (ワッチョイ 86cf-7DGa)
2023/01/20(金) 16:51:45.29ID:pV6+JPqV0 やったことないけど>>122見る限りりそんなに偏らないんじゃないかな
基本的にやりくちとしては暗号分野の鍵導出処理と似たようなことをしてるんだから
基本的にやりくちとしては暗号分野の鍵導出処理と似たようなことをしてるんだから
125デフォルトの名無しさん (スッップ Sdea-2YtF)
2023/01/20(金) 18:40:05.00ID:R9yntGVvd 暗号の乱数とゲームで使うような乱数は違うだろ
126デフォルトの名無しさん (ワッチョイ ed01-hn8B)
2023/01/20(金) 18:58:44.32ID:coXRsv3s0 値の範囲を調整するのに mod とると周期性が現れたり偏ったりするねんな
127デフォルトの名無しさん (ワッチョイ 2a47-w88e)
2023/01/20(金) 19:06:38.00ID:vRsHomcy0 >>122
リフレッシュカウンタから乱数を作るのがお約束ですよ、8 bit の時代はね
リフレッシュカウンタから乱数を作るのがお約束ですよ、8 bit の時代はね
128デフォルトの名無しさん (スッップ Sdea-2YtF)
2023/01/20(金) 19:28:35.95ID:R9yntGVvd >>127
そういうCPUやBASICROMに依存する方法は最新機種では動作が変わったり予測できないので商業レベルではやらなかった
かわりに線形合同などのアルゴリズムを使った
アーケードのプレイデモではジョイスティックとボタンの記録だけ取って再生してメモリを節約してたので
毎回同じ乱数パターン(敵の移動や弾発射)が獲得できないと困るので
そういうCPUやBASICROMに依存する方法は最新機種では動作が変わったり予測できないので商業レベルではやらなかった
かわりに線形合同などのアルゴリズムを使った
アーケードのプレイデモではジョイスティックとボタンの記録だけ取って再生してメモリを節約してたので
毎回同じ乱数パターン(敵の移動や弾発射)が獲得できないと困るので
129デフォルトの名無しさん (テテンテンテン MMde-tpib)
2023/01/20(金) 20:01:16.13ID:EscqwfOXM130デフォルトの名無しさん (スッップ Sdea-2YtF)
2023/01/20(金) 20:28:16.76ID:R9yntGVvd 疑似乱数にはたいてい周期性が現れるもの
とくに下の桁に現れやすいので
上の桁を取ればいい(modではなく目的の桁/乱数の最大桁をかける)
とくに下の桁に現れやすいので
上の桁を取ればいい(modではなく目的の桁/乱数の最大桁をかける)
131デフォルトの名無しさん (ワッチョイ 6a36-f6s+)
2023/01/20(金) 20:45:14.37ID:A1RdTars0 >127
再現性のある乱数が欲しいって場合も微レ存。
再現性のある乱数が欲しいって場合も微レ存。
132はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 0a3e-w88e)
2023/01/20(金) 21:21:15.74ID:FDJF8fJ70 >>129
乱数源自体は良質なものだという前提で、
0~10 が欲しいときに単に %11 にすると小さい値のほうが少し出現率が高くなる。
たとえば乱数源がバイト単位だとすると、
255 以下で最大の 11 の倍数 (253) を超えた分 (254~255) が出現率を偏らせる原因。
だからそのような値が出たときに捨てて次の値を使用することにした上で %11 すればいい。
C++ の std::uniform_int_distribution などはだいたいそういう実装になってる。
乱数源自体は良質なものだという前提で、
0~10 が欲しいときに単に %11 にすると小さい値のほうが少し出現率が高くなる。
たとえば乱数源がバイト単位だとすると、
255 以下で最大の 11 の倍数 (253) を超えた分 (254~255) が出現率を偏らせる原因。
だからそのような値が出たときに捨てて次の値を使用することにした上で %11 すればいい。
C++ の std::uniform_int_distribution などはだいたいそういう実装になってる。
133デフォルトの名無しさん (ワッチョイ 6a36-f6s+)
2023/01/20(金) 21:27:39.82ID:A1RdTars0 アセンブラで
MOV AL,8bit 乱数
MOV BL,欲しい整数乱数最大値+1
MUL BL
;AHに0からBL-1までの乱数が入る
ってなことやってたような気がする。
計算上最大値の出現率が低いみたい。
16bitに拡張すれば多少改善。
MOV AL,8bit 乱数
MOV BL,欲しい整数乱数最大値+1
MUL BL
;AHに0からBL-1までの乱数が入る
ってなことやってたような気がする。
計算上最大値の出現率が低いみたい。
16bitに拡張すれば多少改善。
134デフォルトの名無しさん (ワッチョイ 2a47-w88e)
2023/01/20(金) 22:44:15.60ID:vRsHomcy0135デフォルトの名無しさん (ワッチョイ 2a47-w88e)
2023/01/20(金) 22:45:17.95ID:vRsHomcy0136はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 0a3e-w88e)
2023/01/20(金) 23:11:55.26ID:FDJF8fJ70 ファミコン、スーパーファミコン時代の有名ソフトの乱数生成の仕組みが今ではかなり明らかになってるが、
ドラクエとかファイナルファンタジーとかでも思ったより場当たり的な雑な仕組みで驚く。
こういう用途だと多少の性質の悪さもそれはそれで味になるということもあるんだろう。
シミュレーションとか暗号とかに関わるものだと理論的な裏付けがないと恐ろしいが……
ドラクエとかファイナルファンタジーとかでも思ったより場当たり的な雑な仕組みで驚く。
こういう用途だと多少の性質の悪さもそれはそれで味になるということもあるんだろう。
シミュレーションとか暗号とかに関わるものだと理論的な裏付けがないと恐ろしいが……
137デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/21(土) 00:33:34.31ID:EJn7glvGM138デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/21(土) 00:40:48.68ID:EJn7glvGM 1 2 2 と出て、2が偏ってと言う奴はいない
あまりにも範囲が小さいと、偏ってるかとか周期が有るかは長く見ないと分からん
あまりにも範囲が小さいと、偏ってるかとか周期が有るかは長く見ないと分からん
139デフォルトの名無しさん (ワッチョイ 6fda-A+LD)
2023/01/21(土) 00:51:58.56ID:9x5I4Xif0140デフォルトの名無しさん (ワッチョイ cfcf-Jpma)
2023/01/21(土) 00:55:32.36ID:iEE3pXT90 >>137
周期の話じゃないよ 乱数発生器の下位ビットはランダムじゃないことがあるって話だよ
全部同じ値だったりrand()%2で0と1が交互に順番に出てくるだけだったりするから上位ビット使おうってこと
自前で乱数を作る際にmodを使わないなんてのはC言語のFAQレベルの常識の話だからちょっとネットでもあさって勉強すればすぐ身につくよ
それ以前に良い発生器を使えばいいっていうのはその通りだね
周期の話じゃないよ 乱数発生器の下位ビットはランダムじゃないことがあるって話だよ
全部同じ値だったりrand()%2で0と1が交互に順番に出てくるだけだったりするから上位ビット使おうってこと
自前で乱数を作る際にmodを使わないなんてのはC言語のFAQレベルの常識の話だからちょっとネットでもあさって勉強すればすぐ身につくよ
それ以前に良い発生器を使えばいいっていうのはその通りだね
141デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/21(土) 01:15:16.87ID:EJn7glvGM >>140
オマエが無知なの分かったよ
下位ビットが規則的になるってのは何も考えてない線形合同法だけの性質だ
msvcrtのrandは線形合同法で求めた32bitの内上位16bitを下位にシフトしてるから、そういう性質はない
他の長周期な乱数はなにもしなくても当然そんな性質はない
オマエが無知なの分かったよ
下位ビットが規則的になるってのは何も考えてない線形合同法だけの性質だ
msvcrtのrandは線形合同法で求めた32bitの内上位16bitを下位にシフトしてるから、そういう性質はない
他の長周期な乱数はなにもしなくても当然そんな性質はない
142デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/21(土) 01:36:04.58ID:EJn7glvGM ちなみにLinux(glibc)で% 10で試しても、偶数と奇数が交互に続くと言うことはなかった
カルドセプトで話題になった乱数のバグは、自前で線形合同法を実装したから起きた問題だ
普通にSDKの乱数を使ってたら起きなかっただろう
カルドセプトで話題になった乱数のバグは、自前で線形合同法を実装したから起きた問題だ
普通にSDKの乱数を使ってたら起きなかっただろう
143デフォルトの名無しさん (ワッチョイ 7f36-88l+)
2023/01/21(土) 02:05:39.28ID:sslkm/QP0 >135
8/16bit時代のティルナノーグってゲームがシナリオコードっての使ってマップやシナリオを自動生成するらしく、
まぁ多分シナリオコードを再現性のある乱数のキーにしてるんだろうと。
8/16bit時代のティルナノーグってゲームがシナリオコードっての使ってマップやシナリオを自動生成するらしく、
まぁ多分シナリオコードを再現性のある乱数のキーにしてるんだろうと。
144デフォルトの名無しさん (スッップ Sd1f-iFXH)
2023/01/21(土) 05:00:16.98ID:Q9FQ3lI1d >>141
結局下位のほうに周期性が現れやすいというのは肯定してるなw
ライブラリのを仕組みもわからずそのまま使うと問題が起きた時に危険なので自前で作ったほうが楽なこともあるんだよ
移植の問題もあるから
結局下位のほうに周期性が現れやすいというのは肯定してるなw
ライブラリのを仕組みもわからずそのまま使うと問題が起きた時に危険なので自前で作ったほうが楽なこともあるんだよ
移植の問題もあるから
145デフォルトの名無しさん (ワッチョイ 6301-CtYK)
2023/01/21(土) 11:13:45.88ID:TvLSyCnz0146デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/21(土) 12:57:12.01ID:EJn7glvGM >>144
線形合同法そのままの下位ビットはランダム性が低いから上位16bitを使うという実装がされてる
これは%で下位ビット使っても何も問題無い
他の乱数(例えばメルセンヌツイスターとか)とかも下位ビット使っても何も問題無い
オマエは何が言いたいんだ?
乱数イコール素の線形合同法と決めつけてんのか?
線形合同法そのままの下位ビットはランダム性が低いから上位16bitを使うという実装がされてる
これは%で下位ビット使っても何も問題無い
他の乱数(例えばメルセンヌツイスターとか)とかも下位ビット使っても何も問題無い
オマエは何が言いたいんだ?
乱数イコール素の線形合同法と決めつけてんのか?
147デフォルトの名無しさん (ワッチョイ 7f47-j5s0)
2023/01/21(土) 22:32:06.91ID:PxhUXXTz0 それより MT を利用したストリーム暗号の実装を探しているんですが、誰か良さげなのを書いていませんかね?
148デフォルトの名無しさん (ラクッペペ MM7f-qqxO)
2023/01/21(土) 23:01:28.77ID:5FfejZmpM 暗号の実装なら乱数源よりハッシュ関数の設計の方が重要だと思うけど
149はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ff3e-j5s0)
2023/01/21(土) 23:09:55.12ID:AnImjWZM0 メルセンヌツイスタは予測はしやすいので暗号に向かないって話じゃなかったっけ?
理論に詳しいわけじゃないけどストリーム暗号だと生成した乱数を
ほとんど順序通り使うことになるので素直に使うと弱い暗号になってまう。
それをカバーする案がどこかで出ているとかいう話なのかな?
理論に詳しいわけじゃないけどストリーム暗号だと生成した乱数を
ほとんど順序通り使うことになるので素直に使うと弱い暗号になってまう。
それをカバーする案がどこかで出ているとかいう話なのかな?
150デフォルトの名無しさん (ワッチョイ 7f47-j5s0)
2023/01/21(土) 23:25:57.01ID:PxhUXXTz0151デフォルトの名無しさん (ワッチョイ d3a7-Pfi1)
2023/01/22(日) 06:45:18.91ID:5LyKSzcv0 メルセンヌツイスタは暗号論的乱数ではないからな
標準の範疇ではrandom_deviceと併用することで暗号論的乱数を作れる
# 俺はrandom_deviceにハメられたことがあって不信感持ってる
標準の範疇ではrandom_deviceと併用することで暗号論的乱数を作れる
# 俺はrandom_deviceにハメられたことがあって不信感持ってる
152デフォルトの名無しさん (ラクッペペ MM7f-qqxO)
2023/01/22(日) 06:57:44.96ID:GyU+xFDzM ほぼ2の20000乗の長周期の乱数列の出現パターンに対して実用的な有限時間内に値の予測とかできるものなのか?
153デフォルトの名無しさん (スッップ Sd1f-iFXH)
2023/01/22(日) 09:17:28.62ID:m0kendFMd 初期値を毎回同じにするとかマヌケな実装してなければ大丈夫だが
そういうの意外と多いからな
そういうの意外と多いからな
154はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ff3e-j5s0)
2023/01/22(日) 11:31:30.58ID:ZNfmIfkb0 >>152
ざっと調べてみた感じだと素朴なメルセンヌツイスタだと 624 個の連続する乱数列があれば内部状態を計算可能ということみたいだね。
ざっと調べてみた感じだと素朴なメルセンヌツイスタだと 624 個の連続する乱数列があれば内部状態を計算可能ということみたいだね。
155デフォルトの名無しさん (ラクッペペ MM7f-qqxO)
2023/01/22(日) 11:55:01.35ID:2NQ69pgqM 擬似乱数は内部状態から数列を計算して外部出力しているのであって、出力された数列の結果だけから内部状態を計算して次回出力を予測するのは難しい
623もの内部変数をすべて確定させようとすれば途方も無いことになると思うけど
623もの内部変数をすべて確定させようとすれば途方も無いことになると思うけど
156デフォルトの名無しさん (ワッチョイ ff97-Grv2)
2023/01/22(日) 13:27:42.71ID:slZVcCWf0 量子コンピュータならあっという間かもしれん
157デフォルトの名無しさん (ワッチョイ d3a7-Pfi1)
2023/01/22(日) 14:53:35.01ID:5LyKSzcv0 もしかしてハッシュを復号できると思っている人がいるの?
158デフォルトの名無しさん (ワッチョイ ff02-Jpma)
2023/01/22(日) 17:32:55.31ID:KzI8pxO80 現実で乱数で問題になるのは中周期
短周期は誰が見ててもすぐに欠点がわかる
中周期は人間が見てわかりづらいけど
へたをすると推測されうる
本当に重要な場面では線形合同法は使わないね
短周期は誰が見ててもすぐに欠点がわかる
中周期は人間が見てわかりづらいけど
へたをすると推測されうる
本当に重要な場面では線形合同法は使わないね
159デフォルトの名無しさん (ワッチョイ 0301-WyxW)
2023/01/22(日) 18:43:18.71ID:5nd4WcY/0160デフォルトの名無しさん (JP 0H67-uWjM)
2023/01/22(日) 18:52:07.93ID:Gv0g55llH 15は大した乱数を求めてないだろうし線形合同法で大丈夫でしょ
161デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/22(日) 19:51:00.57ID:r87X7TULM 少なくともゲーム用途ではもう決定版とも言えるのがPCGだ
これは線形合同法を加工したものだ
大体の用途にはこれだけ知ってれば十分だろ
これは線形合同法を加工したものだ
大体の用途にはこれだけ知ってれば十分だろ
162デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/23(月) 07:23:09.72ID:HN6zkKZyd >>159
返事しやがったwww
返事しやがったwww
163デフォルトの名無しさん (ワッチョイ 0301-WyxW)
2023/01/23(月) 07:36:54.35ID:rT2ytU3d0 >>162
ハッシュ復号で顔真っ赤w
ハッシュ復号で顔真っ赤w
164デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/23(月) 07:39:15.92ID:HN6zkKZyd 無理ありすぎ
157の発言内容で恥さらしたと思ったの
おまえだけだから
157の発言内容で恥さらしたと思ったの
おまえだけだから
165デフォルトの名無しさん (ワッチョイ 0301-WyxW)
2023/01/23(月) 07:52:21.59ID:rT2ytU3d0 ならハッシュ復号とか言う意味不明な用語を説明してみw
166デフォルトの名無しさん (アウアウウー Saa7-D1pf)
2023/01/23(月) 07:59:00.47ID:OYWoWYjxa 必死やね
167デフォルトの名無しさん (ワッチョイ 0301-WyxW)
2023/01/23(月) 08:34:51.13ID:rT2ytU3d0168デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/23(月) 09:53:15.91ID:HN6zkKZyd 昔、ブラックエンジェルスって漫画で
「神父様」というワードで殺人スイッチ入るキャラいたけど
ここには「ハッシュ」で発狂するやつがいるな
「神父様」というワードで殺人スイッチ入るキャラいたけど
ここには「ハッシュ」で発狂するやつがいるな
169デフォルトの名無しさん (ワッチョイ cf63-88l+)
2023/01/23(月) 10:00:52.21ID:ZftbX+tS0 発狂なんて表現は、自身が精神科の患者で無ければ口にしない言葉だ
170デフォルトの名無しさん (オッペケ Src7-uWjM)
2023/01/23(月) 10:26:46.25ID:e9NCR7zVr ハッシュ値からハッシュ関数への入力を求めることをハッシュを復号て言ってるのかと、思ったけど違うの?
171デフォルトの名無しさん (ドコグロ MMff-Ymzw)
2023/01/23(月) 11:18:20.16ID:TfCEWCiYM 普通はそれを原像攻撃といいます
172デフォルトの名無しさん (スッップ Sd1f-iFXH)
2023/01/23(月) 12:07:23.12ID:2WGuD1xXd >>170
ハッシュドビーフを牛に戻せるか?
ハッシュドビーフを牛に戻せるか?
173デフォルトの名無しさん (ワッチョイ 4369-SUdz)
2023/01/23(月) 13:04:17.48ID:nA4Uy4AL0 おおよそハッシュ関数って多対1の写像やから 与えられた入力を予測するのは難しいわね
174デフォルトの名無しさん (ワッチョイ 0301-WyxW)
2023/01/23(月) 13:05:15.54ID:rT2ytU3d0175デフォルトの名無しさん (ワッチョイ c35f-QR4B)
2023/01/23(月) 18:58:27.02ID:ru4XzPDN0 暗号学的ハッシュ関数は暗号学的なだけで暗号ではないわな
まあ、ややこしいのはわかる
まあ、ややこしいのはわかる
176デフォルトの名無しさん (ワッチョイ cf63-88l+)
2023/01/23(月) 19:37:29.31ID:ZftbX+tS0 現在5chで使っているIDもハッシュ関数使っています
掲示板毎の番号、日付、IPアドレスの組み合わせ32ビットを
16ビットを求めてます
そのため、IDから元のIPアドレスは特定不可能とされてます
掲示板毎の番号、日付、IPアドレスの組み合わせ32ビットを
16ビットを求めてます
そのため、IDから元のIPアドレスは特定不可能とされてます
177デフォルトの名無しさん (ワッチョイ cf63-88l+)
2023/01/23(月) 19:39:57.78ID:ZftbX+tS0 組み合わせた32ビットのキーから
16ビットのIDSを求めてます
でした
言葉足りなくて済みません
16ビットのIDSを求めてます
でした
言葉足りなくて済みません
178デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/23(月) 19:50:20.64ID:HN6zkKZyd 優しいお兄さんたちがやんわり教えてくれてるぞ
よーく聞いとけなハッシュ君
よーく聞いとけなハッシュ君
179デフォルトの名無しさん (ワッチョイ 0301-WyxW)
2023/01/23(月) 20:22:55.39ID:rT2ytU3d0 確認のための>>170とお前以外に復号なんて言ってるアホはいないけどなw
180デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/23(月) 20:25:01.82ID:HN6zkKZyd いいからよく聞いとけ
おまえには金取ってもいいくらいの
特別サービスだぞ
おまえには金取ってもいいくらいの
特別サービスだぞ
181デフォルトの名無しさん (アウアウウー Saa7-D1pf)
2023/01/23(月) 20:28:15.99ID:rP/zs2fBa 上げ足取りの極みやね
伝わるとしても即興の造語は決して許されない
伝わるとしても即興の造語は決して許されない
182デフォルトの名無しさん (ワッチョイ 0301-WyxW)
2023/01/23(月) 20:34:11.46ID:rT2ytU3d0183デフォルトの名無しさん (オッペケ Src7-uWjM)
2023/01/23(月) 22:02:00.33ID:FHYSH6Afr >>173
ハッシュってできる限り衝突しないようにするけど多対一になるのか?
ハッシュってできる限り衝突しないようにするけど多対一になるのか?
184デフォルトの名無しさん (ワッチョイ cf02-pBtB)
2023/01/23(月) 22:10:48.44ID:gaP9WTLb0 そうじゃなければ意味無いでしょ
バイト表現をそのままキーにでもするつもりか
バイト表現をそのままキーにでもするつもりか
185デフォルトの名無しさん (ワッチョイ cf02-pBtB)
2023/01/23(月) 22:18:56.34ID:gaP9WTLb0 大きな空間から小さな空間へぐちゃっと潰す非単射だからhashと呼ばれるんだろうし、むしろ被らなければハッシュ法とは呼べない
186デフォルトの名無しさん (ワッチョイ 6301-SUdz)
2023/01/23(月) 23:25:11.50ID:JEHxFd+10187デフォルトの名無しさん (ワッチョイ cf63-88l+)
2023/01/24(火) 00:14:26.83ID:D+LPvIAC0 この掲示板で使ってるIDは、実際に衝突している
32ビットのバリエーションがある対象を16ビットパターンに圧縮する
どの位衝突が発生するか、簡単に計算で出せるだろう
32ビットのバリエーションがある対象を16ビットパターンに圧縮する
どの位衝突が発生するか、簡単に計算で出せるだろう
188はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ff3e-j5s0)
2023/01/24(火) 00:47:30.90ID:Ago7Tr1G0 >>183
元になる情報より小さい空間への写像なんだから当然に衝突することはありうるよ。
確率が均等になるようにデザインされるのが普通だが。
それとハッシュといっても均等でありさえすればよいハッシュテーブルなどに使うハッシュ関数と
意図的に衝突させるのが困難な暗号学的ハッシュ関数は事情が異なる。
元になる情報より小さい空間への写像なんだから当然に衝突することはありうるよ。
確率が均等になるようにデザインされるのが普通だが。
それとハッシュといっても均等でありさえすればよいハッシュテーブルなどに使うハッシュ関数と
意図的に衝突させるのが困難な暗号学的ハッシュ関数は事情が異なる。
189デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/24(火) 07:19:05.11ID:eIuiRJ7Hd I/Oのマシン語リストの1行チェックサムだったのが
CRCに進化し、更にCRC32になり・・・
CRCに進化し、更にCRC32になり・・・
190デフォルトの名無しさん (ワッチョイ 7f47-j5s0)
2023/01/24(火) 07:22:48.88ID:hOWV1dmX0 >>189
それは誤り訂正符号であってハッシュじゃない、誤りが少なければ訂正できる、という性質のもの
それは誤り訂正符号であってハッシュじゃない、誤りが少なければ訂正できる、という性質のもの
191デフォルトの名無しさん (ワッチョイ 6301-CtYK)
2023/01/24(火) 07:28:16.15ID:CHY+WBSp0 予測や推論が可能な写像か
192デフォルトの名無しさん (ラクッペペ MM7f-qqxO)
2023/01/24(火) 07:38:18.20ID:/rWynzzhM 誤り検出や訂正と予測や推論は違う
巡回符号では予測は出来ない
巡回符号では予測は出来ない
193デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/24(火) 07:45:39.55ID:eIuiRJ7Hd194デフォルトの名無しさん (ワッチョイ 6fda-A+LD)
2023/01/24(火) 08:00:50.17ID:yjc0n37Q0195デフォルトの名無しさん (ワッチョイ 4369-SUdz)
2023/01/24(火) 08:05:18.69ID:iB9B6REv0 元データと誤り訂正符号がセットになってる前提だものね
PGPでいう暗号ではなく署名
PGPでいう暗号ではなく署名
196デフォルトの名無しさん (スッププ Sd1f-lTI6)
2023/01/24(火) 13:20:38.09ID:cMLylpMed197デフォルトの名無しさん (ワッチョイ c35f-QR4B)
2023/01/24(火) 18:41:20.06ID:XLjyfoTr0 const char *subarasiikoodo() {retrun "乱数が性器分布してるもの"/*"銀杏乱数"*/;}
198デフォルトの名無しさん (スッップ Sd1f-iFXH)
2023/01/24(火) 23:29:13.35ID:1YOqlgJ1d >>196
淫乱とか性器を見せろとかなんなんだね君はいい加減にしたまえ!
淫乱とか性器を見せろとかなんなんだね君はいい加減にしたまえ!
199デフォルトの名無しさん (ワンミングク MM9f-Grv2)
2023/01/25(水) 20:45:01.15ID:8z5wZ+1pM 卑猥な言葉に反応する大人を見てはしゃいでいる子供って感じ
200デフォルトの名無しさん (スップ Sd1f-N2va)
2023/01/26(木) 07:05:46.47ID:epYCai+9d プログラム技術板で猥談にしか参加できないやつpgr
201デフォルトの名無しさん (オッペケ Src7-yj0T)
2023/01/26(木) 11:50:43.36ID:xdWnPQo8r202デフォルトの名無しさん (ワッチョイ cf63-88l+)
2023/01/26(木) 23:06:32.72ID:HOinztZt0 何に使うものなんですか?
203デフォルトの名無しさん (ワッチョイ ff02-Jpma)
2023/01/27(金) 05:48:59.42ID:Ia5Vv5I40 セキュリティがどうでもいい時に
速度を要求されるとき
速度を要求されるとき
204デフォルトの名無しさん (ラクッペペ MM7f-qqxO)
2023/01/27(金) 08:04:21.64ID:DHOIN7NEM パスワードなどを暗号化して保存する時ハッシュ値を保存する
他のパスワード値と重複することが無いように完全ハッシュとする
万一衝突すれば他人のパスワードが誤ってすり抜ける可能性が生じる
他のパスワード値と重複することが無いように完全ハッシュとする
万一衝突すれば他人のパスワードが誤ってすり抜ける可能性が生じる
205デフォルトの名無しさん (ワッチョイ cfcf-Jpma)
2023/01/27(金) 09:53:14.54ID:hWSIv7AR0 んなアホな
完全ハッシュの説明はともかく、パスワードに関してはIDとペアで使うんだから他人のパスワードと被ろうがどうだろうが関係がない
そもそもソルト使うんだからuser1とuser2が同じパスワードを使ってもハッシュ値は別になる
完全ハッシュの説明はともかく、パスワードに関してはIDとペアで使うんだから他人のパスワードと被ろうがどうだろうが関係がない
そもそもソルト使うんだからuser1とuser2が同じパスワードを使ってもハッシュ値は別になる
206デフォルトの名無しさん (ラクッペペ MM7f-qqxO)
2023/01/27(金) 10:07:50.70ID:GgXEpiKGM いや完全ハッシュの前提が崩れると違うパスワードが同じハッシュ値で衝突して区別できないので破綻する
ソルトは完全ハッシュを担保するための手段
ソルトは完全ハッシュを担保するための手段
207デフォルトの名無しさん (ワッチョイ 735f-ffW7)
2023/01/27(金) 10:42:53.11ID:MqPTrKVr0 https://en.wikipedia.org/wiki/Perfect_hash_function
> Disadvantages of perfect hash functions are that S needs to be known for the construction of the perfect hash function.
無理やろ
> Disadvantages of perfect hash functions are that S needs to be known for the construction of the perfect hash function.
無理やろ
208デフォルトの名無しさん (ワッチョイ 6fda-A+LD)
2023/01/27(金) 10:59:53.36ID:WUhobyCY0209デフォルトの名無しさん (ワッチョイ cfcf-Jpma)
2023/01/27(金) 11:02:54.46ID:hWSIv7AR0 MM7f-qqxOは衝突がないっていうのがどういうことなのかなんか勘違いしてるんだろう
そういうもんを用意したとして>>203のいう通り強度なんかめちゃくちゃ弱くなるんだからさ
いずれにしても破綻するとか言われたところで世の中は衝突ありのSHA-2使ってんだからもうちょい勉強しとけ
そういうもんを用意したとして>>203のいう通り強度なんかめちゃくちゃ弱くなるんだからさ
いずれにしても破綻するとか言われたところで世の中は衝突ありのSHA-2使ってんだからもうちょい勉強しとけ
210デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/27(金) 12:35:15.87ID:ctyQpdLuM >>206
ハッシュ値とハッシュテーブルを混同しててクソワロタw
ハッシュ値とハッシュテーブルを混同しててクソワロタw
211デフォルトの名無しさん (スッップ Sd1f-P0Of)
2023/01/27(金) 18:34:56.90ID:I0K5YroCd >>199
ちょっとした変換ミスだろ?
あるシードを与えてそこから連続的に乱数を大量に取得してそれらを並べてみたら、あら不思議 平均0分散1のヒストグラムができました、てなモノが欲しいだけなのに・・・
ちょっとした変換ミスだろ?
あるシードを与えてそこから連続的に乱数を大量に取得してそれらを並べてみたら、あら不思議 平均0分散1のヒストグラムができました、てなモノが欲しいだけなのに・・・
212デフォルトの名無しさん (テテンテンテン MM7f-TAsf)
2023/01/27(金) 19:16:01.14ID:ctyQpdLuM 正規分布乱数でググれば幾らでも出てくる
ちゃんと理解するのは容易じゃないがな
ちゃんと理解するのは容易じゃないがな
213デフォルトの名無しさん (スップ Sd1f-iFXH)
2023/01/27(金) 23:07:01.65ID:Nd07Ngynd214デフォルトの名無しさん (ワッチョイ da97-Hlgs)
2023/01/28(土) 13:25:21.47ID:5Vj/XtKl0 それはどのパスワードでも同じ
215デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/28(土) 14:42:34.89ID:dMjf5U6fa216デフォルトの名無しさん (ワッチョイ 1a34-5WkL)
2023/01/28(土) 15:06:06.84ID:ys7yM/+j0 パスワード程度の小さなデータなら
原データよりもビット数が多いハッシュを使えば安全だろ
原データよりもビット数が多いハッシュを使えば安全だろ
217蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdba-yGaH)
2023/01/28(土) 15:09:44.90ID:bcwoFDyEd おまいらにちょっと質問。
https://github.com/katahiromz/GazoNarabePDF/blob/858aed3331fb9f6b97836918c449366cb535bc39/GNPDF.cpp#L31
SHA-256でシェアウェアのパスワード設定をしているけど、このハッシュとソルトでブルートフォースできますか?
https://github.com/katahiromz/GazoNarabePDF/blob/858aed3331fb9f6b97836918c449366cb535bc39/GNPDF.cpp#L31
SHA-256でシェアウェアのパスワード設定をしているけど、このハッシュとソルトでブルートフォースできますか?
218デフォルトの名無しさん (ワッチョイ 4ecf-2biX)
2023/01/28(土) 15:29:16.38ID:x6yOEZAM0 攻撃に非現実的な時間が必要ってだけであって可否を問うなら可能に決まってんだろうよ
ちょっと考えれば分かると思うんだが、できますかとか脳ミソ幾分欠損でもしてんのかね?
ちょっと考えれば分かると思うんだが、できますかとか脳ミソ幾分欠損でもしてんのかね?
219蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdba-yGaH)
2023/01/28(土) 15:44:01.84ID:bcwoFDyEd スーパーハッカーならスパッと解けると思ったが、つまらないな
220デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/01/28(土) 15:45:30.65ID:jdKvyKGa0 口の汚さはアタマ悪くても可能に決まってます
221デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/28(土) 16:39:52.59ID:NqcfPhRT0 >>216
ビット数が多くても偏りの多いハッシュ関数使ってたらダメってことすらわからんのか?
ビット数が多くても偏りの多いハッシュ関数使ってたらダメってことすらわからんのか?
222デフォルトの名無しさん (テテンテンテン MMb6-YANd)
2023/01/28(土) 17:23:18.26ID:btPcpkQFM パスワードは間違いが続くと、暫く時間たたないとログイン出来なくすればブルートフォースもほとんど不可能になる
なのでハカーは総当たりなんてせずに、何処かで漏れたIDとパスワードを違うサイトで試すだけだ
なのでハカーは総当たりなんてせずに、何処かで漏れたIDとパスワードを違うサイトで試すだけだ
223デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/28(土) 20:47:48.08ID:NqcfPhRT0224デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/01/28(土) 21:54:17.79ID:jdKvyKGa0 最近のサイトはメッセージで認証番号送ってくる方式が増えた
225デフォルトの名無しさん (ワッチョイ 5f10-3kgq)
2023/01/28(土) 23:13:06.15ID:1IGwH4nq0 laslpassのやらかしを見るがよい
226デフォルトの名無しさん (テテンテンテン MMb6-YANd)
2023/01/29(日) 03:30:21.89ID:FVd++fbJM227デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 07:05:12.39ID:ksaPk66E0 何回で凍結するのかはサイトによって違うのに凍結直前までとかスーパーハカーかよw
228デフォルトの名無しさん (ワッチョイ 1a34-5WkL)
2023/01/29(日) 07:32:46.54ID:6KJkihSb0229デフォルトの名無しさん (ラクッペペ MMb6-aFYY)
2023/01/29(日) 07:33:20.09ID:8/1FN9ANM ブルートフォースはパスワードの総当たり攻撃
リバースブルートフォースはIDの総当たり攻撃
リバースブルートフォースはIDの総当たり攻撃
230デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 07:52:37.42ID:ksaPk66E0231デフォルトの名無しさん (ワッチョイ 1a34-5WkL)
2023/01/29(日) 09:01:19.16ID:6KJkihSb0 おまえの勝手な仮定が前提だからな
こっちにゃ指摘に聞こえてねえんだよ
ストローマン攻撃なんて幼稚な誤謬をするやつが
どの口で技術板に向いているとかぬかすんだアホが
こっちにゃ指摘に聞こえてねえんだよ
ストローマン攻撃なんて幼稚な誤謬をするやつが
どの口で技術板に向いているとかぬかすんだアホが
232デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 09:20:35.03ID:ksaPk66E0 歪めてるんじゃなくて考慮不足を指摘されてるってことすら理解できてないのかw
233デフォルトの名無しさん (ワッチョイ 1a34-5WkL)
2023/01/29(日) 09:45:54.12ID:6KJkihSb0 勝手な仮定といわれていることも何のことかわからんようだな
やべーやつw
やべーやつw
234はちみつ餃子 ◆8X2XSCHEME (ワッチョイ b63e-fO7+)
2023/01/29(日) 11:02:35.45ID:2OIx0YXk0235デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 12:32:40.26ID:ksaPk66E0236蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdba-yGaH)
2023/01/29(日) 12:41:06.40ID:GBa/Exsdd237デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 13:39:20.19ID:ksaPk66E0 偏りの少ないハッシュ関数使えばいいだけだろ
知能ないの?
知能ないの?
238デフォルトの名無しさん (テテンテンテン MMb6-YANd)
2023/01/29(日) 13:45:16.85ID:CAd5BAJYM ブルートフォースって一人だけ狙って、失敗したら他のアカウントを狙っちゃいけないのかよw
239デフォルトの名無しさん (ラクッペペ MMb6-aFYY)
2023/01/29(日) 13:53:11.49ID:5EeyamesM むしろ同じパスワードに対してアカウントを次々に変え続けて総当たりで狙うのがリバースブルートフォース
240はちみつ餃子 ◆8X2XSCHEME (ワッチョイ b63e-fO7+)
2023/01/29(日) 15:19:25.16ID:2OIx0YXk0 >>236
機能するために必要なデータ (プログラム) を暗号化してしまうとかいった方法が考えられる。
必要なデータを得るために正しい鍵が必要なら正しい鍵がないとどうしようもない。
そのへんの一連の技術は「耐タンパー」とか呼ばれてるからググってみて。
ライセンスで制約を付けるから技術的なロックは頑張らないと割り切るのもひとつの手だし、個人製作のシェアウェアはそんなもんだよ。
機能するために必要なデータ (プログラム) を暗号化してしまうとかいった方法が考えられる。
必要なデータを得るために正しい鍵が必要なら正しい鍵がないとどうしようもない。
そのへんの一連の技術は「耐タンパー」とか呼ばれてるからググってみて。
ライセンスで制約を付けるから技術的なロックは頑張らないと割り切るのもひとつの手だし、個人製作のシェアウェアはそんなもんだよ。
241デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 15:24:38.66ID:ksaPk66E0 >>238
だからお前がそれもブルートフォースだと思うのは自由だけど人と会話する時はちゃんとリバースブルートフォースという用語を使わないとはあ?って言われるだけの話
だからお前がそれもブルートフォースだと思うのは自由だけど人と会話する時はちゃんとリバースブルートフォースという用語を使わないとはあ?って言われるだけの話
243デフォルトの名無しさん (ワッチョイ b75e-5WkL)
2023/01/29(日) 19:43:28.13ID:8uY3AZce0244デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 20:29:50.78ID:ksaPk66E0 >>243
うん、お前が誰かは知らんけどID:6KJkihSb0の知能は低いと思うよw
うん、お前が誰かは知らんけどID:6KJkihSb0の知能は低いと思うよw
245デフォルトの名無しさん (テテンテンテン MMb6-YANd)
2023/01/29(日) 20:41:38.56ID:ZKIt/npKM >>241
じゃあ、一人に付きパスワードを固定せずに数回試す事を全アカウントに行うのは何て言うんだよ?
じゃあ、一人に付きパスワードを固定せずに数回試す事を全アカウントに行うのは何て言うんだよ?
246デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/01/29(日) 21:03:50.50ID:teTK5f4i0 マルチリバースブルートフォース
とか、言ってみるテスト
とか、言ってみるテスト
247デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 21:18:32.78ID:ksaPk66E0 >>245
そんなアホなやつしかやらないような行動にまで名前が付いてるわけじゃないw
そんなアホなやつしかやらないような行動にまで名前が付いてるわけじゃないw
248デフォルトの名無しさん (テテンテンテン MMb6-YANd)
2023/01/29(日) 21:42:40.12ID:ZKIt/npKM >>247
IDと同じパスワードや逆にしてみて試す価値は有るだろ
IDと同じパスワードや逆にしてみて試す価値は有るだろ
249デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/01/29(日) 21:45:50.48ID:teTK5f4i0 せっかくここまでアホな行為に名付けているんだから、途中で止めないで
250デフォルトの名無しさん (スップ Sdba-7Y05)
2023/01/29(日) 21:50:17.04ID:BQ9oQ4XFd ここまで不毛な議論ができるもんだなあw
251デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/29(日) 21:57:38.60ID:ksaPk66E0252デフォルトの名無しさん (テテンテンテン MMb6-YANd)
2023/01/29(日) 22:04:36.79ID:CAd5BAJYM253デフォルトの名無しさん (ドコグロ MM86-XIcB)
2023/01/29(日) 22:36:52.56ID:EsKjhbWpM 国会クイズ大会かよ
254デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 06:58:02.02ID:xP88kyoga255デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 07:09:32.64ID:BI3s5DYMd おまえに聞いてるんだろ
教えを請うのではなく
おまえをベリファイする意味で
答えがリンクじゃ失笑されるぞ
教えを請うのではなく
おまえをベリファイする意味で
答えがリンクじゃ失笑されるぞ
256デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 07:43:23.26ID:xP88kyoga >>255
馬鹿過ぎて笑う
馬鹿過ぎて笑う
257デフォルトの名無しさん (ワッチョイ e301-iI7+)
2023/01/30(月) 07:51:37.04ID:qAfCKr8z0 ID総当たりは回数制限をすり抜けられるんじゃないかな?
258デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 09:35:36.72ID:BI3s5DYMd259デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 09:59:45.60ID:deB8/dXTa 質問が馬鹿すぎて>>252が失笑されてるだけだぞw
俺が書いても同じようなこと書くし
俺が書いても同じようなこと書くし
260デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 10:00:48.80ID:deB8/dXTa >>257
そりゃそのためにパスワード固定してId変えながらトライするんだし
そりゃそのためにパスワード固定してId変えながらトライするんだし
261デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 12:26:35.86ID:BI3s5DYMd262デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 12:48:34.85ID:vnpMotzDa もう答え書いてるのにアホなのかな
そもそもLevel低すぎって言われてるだろw
そもそもLevel低すぎって言われてるだろw
263デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/01/30(月) 14:15:02.42ID:dm4YanUU0 米国家安全保障局 (NSA) は 10 日、メモリ安全性の問題に対応するためのガイダンスを公開し、
可能な限りメモリ安全なプログラミング言語を使用するよう推奨した
可能な限りメモリ安全なプログラミング言語を使用するよう推奨した
264デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 14:15:26.05ID:BI3s5DYMd 他人の文書を持ってくるだけで説明したつもりになってるのか
健康美容の悪徳ビジネスに騙されるBBAと同じたなw
てめーは空っぽだと説明したに過ぎないんだが
健康美容の悪徳ビジネスに騙されるBBAと同じたなw
てめーは空っぽだと説明したに過ぎないんだが
265デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 16:10:08.09ID:cLMc+Aima266デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 16:49:59.62ID:BI3s5DYMd267デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 16:50:32.46ID:BI3s5DYMd アンカーミスった
>>265
>>265
268デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/01/30(月) 17:22:08.99ID:dm4YanUU0 グーグルによればAndroidに存在した深刻なセキュリティー脆弱性の70%近くがメモリー安全に関するバグに
起因するという。同様にマイクロソフトも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関
するバグに起因すると述べている。C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、
Rustを採用するに至ったというわけだ。
起因するという。同様にマイクロソフトも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関
するバグに起因すると述べている。C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、
Rustを採用するに至ったというわけだ。
269デフォルトの名無しさん (オッペケ Sr3b-3un5)
2023/01/30(月) 17:56:21.35ID:XUR4uSv7r また他人の文書を?
270デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 18:51:38.71ID:uxYUj7Ria271デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 19:36:39.96ID:BI3s5DYMd おまえもアンカーミスったか
272デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 19:55:53.55ID:uxYUj7Ria >>271
お前にレスしてるんだが?w
お前にレスしてるんだが?w
273デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/01/30(月) 20:14:51.74ID:BI3s5DYMd 俺が言ってないことを引用してか?
幼稚な誤謬が止まらんやつだな
幼稚な誤謬が止まらんやつだな
274デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/30(月) 20:39:01.29ID:uC26F0Aa0275デフォルトの名無しさん (ワッチョイ ff63-5WkL)
2023/01/30(月) 20:54:03.20ID:REdBvt7e0 おまえの勝手な妄言に意図なんてあったのかすらわからんな
276デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/30(月) 21:08:25.32ID:uC26F0Aa0 結局>>252みたいな低レベルなレスして顔真っ赤ってかw
277デフォルトの名無しさん (ワッチョイ ff63-5WkL)
2023/01/30(月) 21:16:42.29ID:REdBvt7e0278デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/01/30(月) 21:35:36.15ID:wssO+tMCa そんなクソみたいなレスしか返せないなら黙ってりゃいいのにw
279デフォルトの名無しさん (ワッチョイ ff63-5WkL)
2023/01/30(月) 21:54:10.97ID:REdBvt7e0 横レス君よ、231あたりのやり取り見てみな?
まあ本人だろうけどw
まあ本人だろうけどw
280デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/30(月) 22:18:56.13ID:uC26F0Aa0 >>279
指摘されたアホがファビョってるだけだろw
指摘されたアホがファビョってるだけだろw
281デフォルトの名無しさん (ワッチョイ ff63-5WkL)
2023/01/30(月) 22:29:46.75ID:REdBvt7e0 ねらー語100%でど真ん中な正体を現してんなw
282デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/31(火) 07:05:48.06ID:YNMDboNb0 ねらー語とか言うねらー語使う>>281w
283デフォルトの名無しさん (アウアウウー Sa47-ZLxo)
2023/01/31(火) 12:50:49.15ID:xZwYkSvIa 煽りじゃなくて率直に疑問なんだが
君ら何歳?
君ら何歳?
284デフォルトの名無しさん (ワッチョイ 0b01-+rQD)
2023/01/31(火) 12:57:03.34ID:tu4JRhBG0 発達障害は精神年齢が極端に低い病気なんだぜ
285デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/01/31(火) 14:42:28.64ID:YNMDboNb0 いきなり自己紹介されてもw
286デフォルトの名無しさん (ワッチョイ b720-5WkL)
2023/01/31(火) 21:15:54.96ID:k9I+OMIE0 マウント取りたがるくせに大したこと言ってなくて
誰ひとり尊敬なんか集まらない寒ーいやつw
誰ひとり尊敬なんか集まらない寒ーいやつw
287デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/02/01(水) 06:43:31.84ID:7PejvYvYa まだまだ続く自己紹介w
288デフォルトの名無しさん (ワッチョイ 0b01-+rQD)
2023/02/01(水) 07:42:58.57ID:cqn38iow0 Q.アスペルガーは嘘をつかないの?
A.嘘をつきまくる。本人は「嘘をついた自覚がない」と主張するが自覚はある。嘘を認めると立場が悪くなるので屁理屈を言って一向に認めない
Q.どうして文章を書くとき難しい単語を使いたがるの?
A.自分を賢く見せようとしているから。しかし内容がスカスカだったり矛盾しているので全然賢く見えない
Q.どうして攻撃的なの?
A.アドレナリン放出量が健常者に比べて多く、また人生が上手く行っていない場合が多いので他人に八つ当たりする(我慢できない)傾向が強いから
Q.どうしてひねくれたズレた回答ばかりするの?
A.アスペルガーは他人と被ることを嫌う。自分が特別な存在でありたいという願望が表れている。健常者の言う妥当な回答はアスペルガーにとっては平凡なつまらない回答。何か特別な凄いことを言おうとしてもそのような知恵がないので悪口とか意味の分からないことを口走ってしまう。
A.嘘をつきまくる。本人は「嘘をついた自覚がない」と主張するが自覚はある。嘘を認めると立場が悪くなるので屁理屈を言って一向に認めない
Q.どうして文章を書くとき難しい単語を使いたがるの?
A.自分を賢く見せようとしているから。しかし内容がスカスカだったり矛盾しているので全然賢く見えない
Q.どうして攻撃的なの?
A.アドレナリン放出量が健常者に比べて多く、また人生が上手く行っていない場合が多いので他人に八つ当たりする(我慢できない)傾向が強いから
Q.どうしてひねくれたズレた回答ばかりするの?
A.アスペルガーは他人と被ることを嫌う。自分が特別な存在でありたいという願望が表れている。健常者の言う妥当な回答はアスペルガーにとっては平凡なつまらない回答。何か特別な凄いことを言おうとしてもそのような知恵がないので悪口とか意味の分からないことを口走ってしまう。
289デフォルトの名無しさん (アウアウウー Sa47-hj3w)
2023/02/01(水) 08:24:41.56ID:Hf88nfPHa 病院の先生に言われたのか?w
290デフォルトの名無しさん (ワッチョイ 0e02-+gdS)
2023/02/01(水) 12:53:11.72ID:MThDxGPg0 コードで語れ
291デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/02/01(水) 13:33:50.91ID:NwXljVovd goto hell;
292デフォルトの名無しさん (ワッチョイ 361f-+rQD)
2023/02/02(木) 04:21:08.56ID:+vgs1l/J0 サイズの決まっていない配列はスタックとヒープどちらに確保されますか?
例
char* file = ファイルデータ;
char copy[fileのlength]; // この配列
みたいなやつ
例
char* file = ファイルデータ;
char copy[fileのlength]; // この配列
みたいなやつ
293デフォルトの名無しさん (ワッチョイ b302-zxNY)
2023/02/02(木) 06:26:11.41ID:0H/6GH320 スタックじゃね
それ関数内の一時変数だろ
それ関数内の一時変数だろ
294デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/02/02(木) 09:53:18.47ID:HFa0iCTPd 規格では未既定
現実はアセンブラ出力させて嫁
現実はアセンブラ出力させて嫁
295デフォルトの名無しさん (ワッチョイ 3b5f-o3pA)
2023/02/02(木) 10:03:10.97ID:UVkNbOZP0 Cにサイズの決まってない配列は存在しないのだ
296デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/02/02(木) 10:20:10.06ID:gL9XQdRL0 >fileのlength
ここに回答者をひっかけ様とする意図がありそう
ここに回答者をひっかけ様とする意図がありそう
297デフォルトの名無しさん (スッププ Sdba-1IsE)
2023/02/02(木) 10:22:42.67ID:Ww3cMMp8d あれ可変長okになってなかったっけって思ったら変わっていってるのね
298デフォルトの名無しさん (ワッチョイ 3b5f-o3pA)
2023/02/02(木) 10:24:57.02ID:UVkNbOZP0 最近のCはできるん?じじいだから古いのしか知らんのだ
299デフォルトの名無しさん (スッププ Sdba-1IsE)
2023/02/02(木) 10:32:02.50ID:Ww3cMMp8d 適当にぐぐるとc99で対応してc11でoptinal扱い
以降はしらぬ
以降はしらぬ
300デフォルトの名無しさん (ワッチョイ 3b5f-o3pA)
2023/02/02(木) 11:50:33.16ID:UVkNbOZP0 マジか、知らんかったわ
sizeofとかも可変になるんやね
sizeofとかも可変になるんやね
301デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/02/02(木) 12:28:52.64ID:HFa0iCTPd >>295
extern FILE __iob[];
extern FILE __iob[];
302デフォルトの名無しさん (ワッチョイ 3b5f-o3pA)
2023/02/02(木) 14:22:32.00ID:UVkNbOZP0 >>301
それ宣言ですやんか
それ宣言ですやんか
303デフォルトの名無しさん (ワッチョイ dbb3-OEO/)
2023/02/02(木) 14:37:47.00ID:3ThHJ/C20 sizeofて最近では()で対象を囲まなくてもいいんだってな
知らなかったw
知らなかったw
304デフォルトの名無しさん (ワッチョイ 4ecf-2biX)
2023/02/02(木) 14:52:29.74ID:aiTy/mzg0 最近もくそもANSI以降sizeof演算子に括弧が必要な時期ってあったの?
K&Rの頃でも要らなかった気がするけど
K&Rの頃でも要らなかった気がするけど
305デフォルトの名無しさん (ワッチョイ 4ecf-2biX)
2023/02/02(木) 14:55:50.18ID:aiTy/mzg0 変数か単項式の場合な
型名とかはエラーだろうけど
型名とかはエラーだろうけど
306デフォルトの名無しさん (ワッチョイ 0e02-+gdS)
2023/02/02(木) 14:56:34.41ID:H/TFSr7b0 型とオブジェクト(を表す式)のサイズを混同してるんじゃね?
複雑な式だと()があった方が読みやすい場合もあるけど、できる限りは明示的に使い分けたほうが
複雑な式だと()があった方が読みやすい場合もあるけど、できる限りは明示的に使い分けたほうが
307デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/02/02(木) 14:56:36.71ID:HFa0iCTPd >>302
不完全型が「存在しない」ってこと?
不完全型が「存在しない」ってこと?
308デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/02/02(木) 15:03:22.53ID:HFa0iCTPd 別な話、BITMAPINFO構造体とかね
309デフォルトの名無しさん (ワッチョイ 5768-fO7+)
2023/02/02(木) 15:15:47.14ID:c8p/A0200 char*とvoid*なら問題ないのに
char**とvoid**だと代入時に警告が出るのはおかしい
ちなみにchar**とvoid*だと警告は出ない
char**とvoid**だと代入時に警告が出るのはおかしい
ちなみにchar**とvoid*だと警告は出ない
310デフォルトの名無しさん
2023/02/02(木) 15:19:10.22ID:yftorlUH0 char
お前らこれ、なんて読んでる(呼んでる)?
お前らこれ、なんて読んでる(呼んでる)?
311デフォルトの名無しさん (ワッチョイ 5768-ZZYt)
2023/02/02(木) 15:26:34.49ID:c8p/A0200 テスト
312デフォルトの名無しさん (ワッチョイ dbb3-OEO/)
2023/02/02(木) 15:27:11.52ID:3ThHJ/C20313デフォルトの名無しさん (ワッチョイ b302-zxNY)
2023/02/02(木) 16:06:25.05ID:0H/6GH320314はちみつ餃子 ◆8X2XSCHEME (ワッチョイ e33e-fO7+)
2023/02/02(木) 18:25:47.28ID:hGGP2LZA0315デフォルトの名無しさん (ワッチョイ b302-zxNY)
2023/02/02(木) 18:27:38.70ID:0H/6GH320 >>314
なるほどね
なるほどね
316デフォルトの名無しさん (ワッチョイ 3b5f-o3pA)
2023/02/02(木) 19:09:34.25ID:UVkNbOZP0317デフォルトの名無しさん (ワッチョイ 0b01-hj3w)
2023/02/02(木) 21:53:34.66ID:UmPclByQ0 >>315
世の中には汎用機みたいにハードウェアスタック持たないマシンもあるしね
世の中には汎用機みたいにハードウェアスタック持たないマシンもあるしね
318デフォルトの名無しさん (スッププ Sdba-7Y05)
2023/02/02(木) 22:48:09.79ID:hiwLlcVmd void hoge( char *src )
{
char hogebuf[strlen(src)+1];
strcpy( hogebuf, src );
...
}
みたいな使い方か
仕様にはないけど慣例としてローカル変数はスタックに取られるだろう
static char hogebuf[strlen(src)+1];
とするとデータセグメントに取られるがコンパイル時にサイズが決定できないのでコンパイルエラーになる
{
char hogebuf[strlen(src)+1];
strcpy( hogebuf, src );
...
}
みたいな使い方か
仕様にはないけど慣例としてローカル変数はスタックに取られるだろう
static char hogebuf[strlen(src)+1];
とするとデータセグメントに取られるがコンパイル時にサイズが決定できないのでコンパイルエラーになる
319デフォルトの名無しさん (ワッチョイ 4e63-+rQD)
2023/02/02(木) 22:58:23.69ID:gL9XQdRL0 _alloca 使ってみるとか
320デフォルトの名無しさん (ワッチョイ 0e02-+gdS)
2023/02/03(金) 02:49:42.07ID:y/daVwxe0 普通スタックに取られるallocaがfree要らずでプロトタイピングに簡便だね
スタックだからBOするし、しない保証も得られないけど
ちゃんと固定長バッファ用意したり、ヒープ利用を考えるのは、とりあえず動くもんが出来てからやる派
スタックだからBOするし、しない保証も得られないけど
ちゃんと固定長バッファ用意したり、ヒープ利用を考えるのは、とりあえず動くもんが出来てからやる派
321デフォルトの名無しさん (ラクッペペ MMb6-Go++)
2023/02/03(金) 11:57:56.75ID:31rfnruOM c言語の標準入出力ストリームの
本当に基本的なことなんですが
わからずに困っています。
教えてください。
std::ofstream stream;
ostream << "ABCEFG";
この入力した文字列の"ABCEFG"を
右側3文字を削除して"ABC"にするには
どうすれば良いのでしょうか?
本当に基本的なことなんですが
わからずに困っています。
教えてください。
std::ofstream stream;
ostream << "ABCEFG";
この入力した文字列の"ABCEFG"を
右側3文字を削除して"ABC"にするには
どうすれば良いのでしょうか?
322デフォルトの名無しさん (スップ Sd5a-VuUV)
2023/02/03(金) 12:14:25.95ID:J/8wCXdid323デフォルトの名無しさん (ラクッペペ MMb6-Go++)
2023/02/03(金) 12:29:37.05ID:31rfnruOM 再度スレ書込み致しました。
ご迷惑おかけ致しました。
ご迷惑おかけ致しました。
324デフォルトの名無しさん (スッププ Sdba-Ik/S)
2023/02/03(金) 20:02:26.07ID:MxUVRWYAd325デフォルトの名無しさん (ワッチョイ 7a4a-5WkL)
2023/02/03(金) 22:09:59.33ID:JOOyDdlj0 ハッシュ君うるさいよ
326デフォルトの名無しさん (ワッチョイ 3fad-4osW)
2023/02/04(土) 18:01:20.17ID:8KrfBFTv0 >>321
それはC言語ではない。
それはC言語ではない。
327デフォルトの名無しさん (ワッチョイ cf79-p19T)
2023/02/04(土) 23:59:34.16ID:Av2vQos/0 C++は最初のアホなstream仕様から抜け出せずいまだに書式出力にすら苦労するのいいよね
328デフォルトの名無しさん (ワッチョイ 4f5f-NCx9)
2023/02/05(日) 00:32:35.28ID:T8+euhoq0 文字列に埋め込んで置き換えるほうが楽だもんね
329デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/05(日) 00:58:06.90ID:7rKpaUoS0 文字配列(へのポインタ値)は普通デカいから、ostreamのビット幅以上に左シフトすると0になるか、signedなら多分UD
330デフォルトの名無しさん (ワッチョイ 3fad-4osW)
2023/02/05(日) 02:05:11.68ID:5cc7+aVs0 君の言っていることがよく分からない。
331デフォルトの名無しさん (ワッチョイ 3f7c-4osW)
2023/02/05(日) 02:13:54.95ID:N1CrWJVM0 C++でも一度もiostreamなんか使ったこと無いわw
かっこいいとでも思ったのかな?w
かっこいいとでも思ったのかな?w
332デフォルトの名無しさん (ワッチョイ 3fad-4osW)
2023/02/05(日) 14:25:38.00ID:5cc7+aVs0 そういや C++ の cout みたいなやつには printf() みたいなメソッドはないの?
Java だと System.out (java.io.PrintStreamクラス)に printf() が Java 1.5 から追加されたが。
Java だと System.out (java.io.PrintStreamクラス)に printf() が Java 1.5 から追加されたが。
333デフォルトの名無しさん (ワッチョイ 4f5f-NCx9)
2023/02/05(日) 14:52:22.62ID:T8+euhoq0 C++20からformatってのが追加されたそうな
334デフォルトの名無しさん (ワッチョイ 8f9b-0wS3)
2023/02/05(日) 14:56:17.20ID:D7iSXwqj0336デフォルトの名無しさん (テテンテンテン MM4f-1Ruw)
2023/02/05(日) 16:27:06.84ID:3hYaBabsM C++20でstd::formatが追加されたよ
337デフォルトの名無しさん (テテンテンテン MM4f-1Ruw)
2023/02/05(日) 16:27:42.01ID:3hYaBabsM リロードしてなかったのか…失礼
338デフォルトの名無しさん (ワッチョイ cfab-wNzk)
2023/02/05(日) 22:53:24.77ID:Xg2vo6vu0 char x=1
char y=2
上記のchar型変数のxとyを比較する際に関して質問させていただきます。
上記の変数に格納されている変数を比較する際はif文で問題ありませんか?
if(x==y)
それともmemcmpやstrcmpで比較するべきでしょうか?
char y=2
上記のchar型変数のxとyを比較する際に関して質問させていただきます。
上記の変数に格納されている変数を比較する際はif文で問題ありませんか?
if(x==y)
それともmemcmpやstrcmpで比較するべきでしょうか?
339デフォルトの名無しさん (ワッチョイ 3f7c-4osW)
2023/02/05(日) 23:00:33.79ID:N1CrWJVM0 問題無いよ
memcmp()は使えても
strcmp()は流石に無いわw
メモリにどう格納されているかなんてエンディアンやらで違うし
memcmp()はcharの配列での比較に普通は使うだろう
memcmp()は使えても
strcmp()は流石に無いわw
メモリにどう格納されているかなんてエンディアンやらで違うし
memcmp()はcharの配列での比較に普通は使うだろう
340デフォルトの名無しさん (ワッチョイ 7f63-4osW)
2023/02/05(日) 23:06:30.35ID:aB7ZC8J00 strcmp使うと、yもxも文字列である想定で比較するから
メモリー上の配置次第で変な結果が出る可能性がある
メモリー上の配置次第で変な結果が出る可能性がある
341デフォルトの名無しさん (ワッチョイ cfab-wNzk)
2023/02/05(日) 23:20:42.10ID:Xg2vo6vu0 ご教授いただきありがとうございました。
342デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/05(日) 23:41:43.70ID:7rKpaUoS0343デフォルトの名無しさん (ワッチョイ 3f7c-4osW)
2023/02/05(日) 23:51:31.50ID:N1CrWJVM0 >>342
memcmp()も良く考えてみたらどうメモリに格納されているか分からないから使えないよね
intelなどのリトルエンディアンならそれで比較可能だろうけど
今ビッグエンディアンのマシンがあるのか分からないけど、昔あったpowerpcなんかはビッグエンディアンだったね
memcmp()も良く考えてみたらどうメモリに格納されているか分からないから使えないよね
intelなどのリトルエンディアンならそれで比較可能だろうけど
今ビッグエンディアンのマシンがあるのか分からないけど、昔あったpowerpcなんかはビッグエンディアンだったね
344デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/05(日) 23:59:54.19ID:7rKpaUoS0 >>343
aがアドレスの取れない変数なら&aの時点で自明にダメだね
上で提示した比較バイト数が1の特殊ケースに限っては単なるunsigned charとしての比較だから、エンディアンネスは関係ないのでは
aがアドレスの取れない変数なら&aの時点で自明にダメだね
上で提示した比較バイト数が1の特殊ケースに限っては単なるunsigned charとしての比較だから、エンディアンネスは関係ないのでは
345デフォルトの名無しさん
2023/02/06(月) 00:52:52.00ID:X/MVAKzo0 >>343
ビッグエンディアンだろうとリトルエンディアンだろうと1バイトのcharの比較に影響しないんじゃね?
ビッグエンディアンだろうとリトルエンディアンだろうと1バイトのcharの比較に影響しないんじゃね?
346デフォルトの名無しさん
2023/02/06(月) 00:53:39.48ID:X/MVAKzo0 ちんこ被った
347デフォルトの名無しさん (スフッ Sd5f-g5ke)
2023/02/06(月) 01:11:21.66ID:yYJiH9Ihd 複数byteから成るwordには並べ方の任意性はあるけど、単一byteからなるword内にbyteを並べる方法は一通りしかない、って事だね
348デフォルトの名無しさん (ワッチョイ 3f7c-4osW)
2023/02/06(月) 01:12:53.01ID:7Y+tRqBu0 >>345
charで例えばchar a = 1でリトルエンディアンだとmemcmp()で1バイト比較でも大丈夫だろうけど
ビッグエンディアンの場合、プロセッサの制約次第だろうけど必ずしも
01と1バイトのみでデータが入っているとは限らず
00 00 00 01みたいに4バイトで格納されてるかも知れないから
どんなマシンでも動くという前提で作るなら辞めておいた方が無難かなという風に思った
charで例えばchar a = 1でリトルエンディアンだとmemcmp()で1バイト比較でも大丈夫だろうけど
ビッグエンディアンの場合、プロセッサの制約次第だろうけど必ずしも
01と1バイトのみでデータが入っているとは限らず
00 00 00 01みたいに4バイトで格納されてるかも知れないから
どんなマシンでも動くという前提で作るなら辞めておいた方が無難かなという風に思った
349デフォルトの名無しさん (ワッチョイ 3f7c-4osW)
2023/02/06(月) 01:14:24.69ID:7Y+tRqBu0 実際の所は分からないけど、char同士の比較は単にa == bで問題無いし
蛇足だったな・・・
蛇足だったな・・・
350デフォルトの名無しさん (ワッチョイ 7fcf-EOzK)
2023/02/06(月) 01:38:26.50ID:LWec8Zrw0 エンディアンなんか関係ねーだろアホか
351デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/06(月) 02:12:44.74ID:Dw7rHwSO0 >>348
処理系/マシンが同一なら問題無い
Cのcharをuint_32相当として保持するマシンが仮に有ったとして、Cがcharのつもりで書き出し/読み返しを行い、unsigned char(とその配列)として比較する限りはCから違いは見えないよ
だって高級言語だもの()
バイナリデータのやり取り、詰め物あり、他言語プロセスとの共有メモリなら適切に変換するルーチンが必要だけど、それはCに限らず全てのプログラムに当てはまる事
処理系/マシンが同一なら問題無い
Cのcharをuint_32相当として保持するマシンが仮に有ったとして、Cがcharのつもりで書き出し/読み返しを行い、unsigned char(とその配列)として比較する限りはCから違いは見えないよ
だって高級言語だもの()
バイナリデータのやり取り、詰め物あり、他言語プロセスとの共有メモリなら適切に変換するルーチンが必要だけど、それはCに限らず全てのプログラムに当てはまる事
352デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/06(月) 02:49:15.07ID:Dw7rHwSO0 32bit以下のデータを全て32bit値として扱うマシンを想定してるのかな?
それは最小アドレス単位、cで言うCHAR_BITSが32のマシンと言い換えられるよね
CHAR_BITSが何bitであろうが、cから見ればsizeof(char)==1である事には変わりがない
と言えば分かりやすいだろうか
それは最小アドレス単位、cで言うCHAR_BITSが32のマシンと言い換えられるよね
CHAR_BITSが何bitであろうが、cから見ればsizeof(char)==1である事には変わりがない
と言えば分かりやすいだろうか
353デフォルトの名無しさん (アウアウウー Sa93-mMLA)
2023/02/06(月) 06:44:27.92ID:xFQJ/1dca >>340
変な結果どころかそもそも&xや&yの次のアドレスを読もうとすることあるから未定義動作だし
変な結果どころかそもそも&xや&yの次のアドレスを読もうとすることあるから未定義動作だし
354デフォルトの名無しさん (ワッチョイ 4f5f-NCx9)
2023/02/06(月) 08:54:18.69ID:KoRl3hvD0 おそらく初心者であろう質問を深読みして暇をつぶすお前らに乾杯
355デフォルトの名無しさん (アウアウウー Sa93-qdck)
2023/02/06(月) 11:15:52.75ID:t0SsOUx4a MISRA-C 2004 の本がある。
MISRA-Cをやっていないと、2004の潜在型/2012の本質型が分からないはず
int 型未満の型を、4バイトに変換してから、元に戻す仕組み。
CPU には、int型未満のレジスタが無いので、使わない部分をマスクするしかない
こういう内部の仕組みは、C/C++ の本には載っていない
こういう変換を知っている香具師は、
むしろ初心者じゃなくて、かなり研究している香具師
普通の香具師は、こういう仕組みを知っているはずがないから。
C/C++の本には載っていないはず
MISRA-Cをやっていないと、2004の潜在型/2012の本質型が分からないはず
int 型未満の型を、4バイトに変換してから、元に戻す仕組み。
CPU には、int型未満のレジスタが無いので、使わない部分をマスクするしかない
こういう内部の仕組みは、C/C++ の本には載っていない
こういう変換を知っている香具師は、
むしろ初心者じゃなくて、かなり研究している香具師
普通の香具師は、こういう仕組みを知っているはずがないから。
C/C++の本には載っていないはず
356デフォルトの名無しさん (ワッチョイ 4f5f-NCx9)
2023/02/06(月) 11:23:50.95ID:KoRl3hvD0 そりゃ絶対とは言わないけどさ、詳しいのにあんな質問の仕方ならかなりひねくれてるわ
357デフォルトの名無しさん (ワッチョイ 3fad-4osW)
2023/02/06(月) 15:55:39.76ID:Pcm2g4vQ0 1 byte は 8 bit とは限らないってことだな。
1 octet は 8 bit 固定と決まっているが。
1 octet は 8 bit 固定と決まっているが。
358デフォルトの名無しさん (ワッチョイ 4f5f-NCx9)
2023/02/06(月) 17:55:31.90ID:KoRl3hvD0 いやでもマシンによってバイトのサイズは変わるかもしれないけど、
少なくともC言語のchar型は8ビットでしょ?違うの?
少なくともC言語のchar型は8ビットでしょ?違うの?
359はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cf3e-F1up)
2023/02/06(月) 18:07:02.20ID:uFl4yuTv0 >>358
ちがうよ。 CHAR_BIT がなんのためにあると思ってんの。
ちがうよ。 CHAR_BIT がなんのためにあると思ってんの。
360デフォルトの名無しさん
2023/02/06(月) 18:13:28.24ID:X/MVAKzo0 >>355
そういうCPUの制約を気にしなくていいのが高級言語だと思うけど違うんかね?
そういうCPU相手のコンパイラならマスクするなり0埋めするなりしてるんじゃない?
想定外のCPU相手なら起こりえるかもしれないけど、それはしょうがないよね
そういうCPUの制約を気にしなくていいのが高級言語だと思うけど違うんかね?
そういうCPU相手のコンパイラならマスクするなり0埋めするなりしてるんじゃない?
想定外のCPU相手なら起こりえるかもしれないけど、それはしょうがないよね
361デフォルトの名無しさん (スップ Sddf-WS7p)
2023/02/06(月) 18:36:57.74ID:Zh5BYfUjd Cは処理系定義が至る所にあるからな
intが2byteの環境もあるし
x86(x64)しか使わないと決め打ちできりゃいいけど
しょぼいCPU向けのしょぼいコンパイラのこと考えなきゃいけないとかなり面倒くさい
intが2byteの環境もあるし
x86(x64)しか使わないと決め打ちできりゃいいけど
しょぼいCPU向けのしょぼいコンパイラのこと考えなきゃいけないとかなり面倒くさい
362デフォルトの名無しさん (アウアウウー Sa93-mMLA)
2023/02/06(月) 19:21:28.86ID:zDYmZQkKa363はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cf3e-F1up)
2023/02/06(月) 20:45:09.59ID:uFl4yuTv0 >>360
システム記述言語として使うことが想定内にあるので高級言語の中では低級なほう。
半世紀前に登場した時点では高級だったかもしれんがそのときの事情を引きずり続けてたら高級になりきれないのもしょうがない。
システム記述言語として使うことが想定内にあるので高級言語の中では低級なほう。
半世紀前に登場した時点では高級だったかもしれんがそのときの事情を引きずり続けてたら高級になりきれないのもしょうがない。
364デフォルトの名無しさん (ワッチョイ 7f63-4osW)
2023/02/06(月) 21:35:59.24ID:T2gDixZS0 中の下あたり?
365デフォルトの名無しさん (ワッチョイ 4f01-mMLA)
2023/02/06(月) 21:49:50.35ID:LM+FnE4L0366デフォルトの名無しさん (ワッチョイ 8fff-KDf3)
2023/02/07(火) 04:23:47.45ID:pZBVLYXq0 高級比べなんてウルトラしょーもない比較してんの初めて見たwww
367デフォルトの名無しさん (JP 0Hbf-lzBW)
2023/02/07(火) 08:13:05.30ID:RNTsodhvH 格納サイズが1octetな符号無し/符号付きの型
368デフォルトの名無しさん (JP 0Hbf-lzBW)
2023/02/07(火) 08:15:09.01ID:RNTsodhvH369デフォルトの名無しさん (ワッチョイ 7fb2-KDf3)
2023/02/07(火) 08:51:22.05ID:X22gDAEx0370デフォルトの名無しさん (スッププ Sd5f-340S)
2023/02/07(火) 09:53:53.00ID:DwAJ4k/cd >>359
つまりcharはマシンのバイトなのでmemcmpではバイトオーダーなんて気にしなくていいって話だろ
つまりcharはマシンのバイトなのでmemcmpではバイトオーダーなんて気にしなくていいって話だろ
371デフォルトの名無しさん (ワッチョイ 4f5f-NCx9)
2023/02/07(火) 13:10:28.46ID:3xIDowU30372デフォルトの名無しさん (ワッチョイ 3fad-4osW)
2023/02/07(火) 17:31:48.89ID:I8JfvgXk0373デフォルトの名無しさん (ワッチョイ 7f63-4osW)
2023/02/07(火) 17:35:32.67ID:oBLl+Yrl0 高級アセンブラ
374デフォルトの名無しさん (ワッチョイ 7f46-+GrI)
2023/02/07(火) 19:08:47.78ID:0Pg2e1tw0 名誉高級言語
375デフォルトの名無しさん (ワッチョイ cf02-2Zio)
2023/02/08(水) 04:20:38.79ID:sW7k1sH00 なるほどね
376デフォルトの名無しさん (ワッチョイ 4f10-4osW)
2023/02/08(水) 08:22:16.03ID:iOvDDO6c0 UNIXの解説書に「UNIX OSの移植の為にC言語を開発した」的なことが書かれてたなぁ。
377デフォルトの名無しさん (ワッチョイ 3fad-2sfl)
2023/02/08(水) 23:07:52.52ID:tLamaggb0 そうそう。
378デフォルトの名無しさん (ワッチョイ 7fcf-EOzK)
2023/02/08(水) 23:18:47.11ID:IYzO9kXQ0 へーそうなんだ
デニスリッチーはそうは思ってないみたいだけど
デニスリッチーはそうは思ってないみたいだけど
379デフォルトの名無しさん (ワッチョイ 7f63-4osW)
2023/02/09(木) 00:04:11.97ID:u6buTta60 デニスリッチーはゲームで遊びたくてC言語を開発した
380デフォルトの名無しさん (ラクッペペ MM4f-E/5O)
2023/02/09(木) 06:30:22.83ID:p7lzjqd+M >>376
その辺りの経緯はK&R本でも触れられてなかったっけ?
その辺りの経緯はK&R本でも触れられてなかったっけ?
381デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/10(金) 01:35:56.41ID:y8U7vNGg0 形にしたのはken, dmrだろうけど、個人的にはCの精神とCS的な観点はbwkに帰したい
the practice of programing, software tools (in pascal), the awk programing language、あたりからプロファイリング
ライターとしてずば抜けている、unixには特に拘らず節操無し、スタイルに拘りが強い、形式言語大好き
しかしk&rではセカンドオーサーだから、著作自体にどれだけ影響力あったかは?(言及あったっけ)
まあk&rは汚いコードを得意気に語るあたり、dmr成分多めな気がするなあ…
the practice of programing, software tools (in pascal), the awk programing language、あたりからプロファイリング
ライターとしてずば抜けている、unixには特に拘らず節操無し、スタイルに拘りが強い、形式言語大好き
しかしk&rではセカンドオーサーだから、著作自体にどれだけ影響力あったかは?(言及あったっけ)
まあk&rは汚いコードを得意気に語るあたり、dmr成分多めな気がするなあ…
382デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/10(金) 01:48:35.12ID:y8U7vNGg0 いやk&rなんだからファーストオーサーはkernighanだわ、素で間違えた
383デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/10(金) 02:07:22.27ID:y8U7vNGg0 俺はunix系ソフトウェアツールはベル研が出してるカジュアル資料で学んだ口だけど、手元の年季入ってくたびれたハードコピーを漁るとほぼbwk著
https://i.imgur.com/n9gVQZ0.jpg
著者は意識してなかったけど、マジ伝道師
https://i.imgur.com/n9gVQZ0.jpg
著者は意識してなかったけど、マジ伝道師
384デフォルトの名無しさん (ワッチョイ 7fcf-EOzK)
2023/02/10(金) 03:12:31.86ID:3+3yiXM/0 書籍はともかくC自体誰が作ったってデニスリッチーが1人で作ったんだろうが
なんで勝手にカーニハンに帰してんだよおまえの所業は朝鮮人よりヒドイだろw
なんで勝手にカーニハンに帰してんだよおまえの所業は朝鮮人よりヒドイだろw
385デフォルトの名無しさん (ワッチョイ 7f02-g5ke)
2023/02/10(金) 04:20:45.54ID:y8U7vNGg0 >>384
日本PC市場でのPC向けUNIX(minix/bsd/linux)本格参戦前(90'後半?)の情報源は、彼に負う所が多かったろう、というバイアスはまあある
大学にでも所属してないとUNIX機に触る機会も無かったし、俺のように>>383のようなサンプルを見て仕様を想像しただろうアマチュア実装(だからmanページは付いてない)が流布していた
なぜCはUNIX文化から脱却できたのか?という(>>376を念頭に置いた)考察ね
bwkの著作にはCP/M, DOS, winプログラ厶の例が多いし、アーキテクチャ/OS間のポータビリティやアルファベット圏以外への進出を真剣に考えてた稀有な人なのは間違いなかろう
wchar_tやらを提唱したのはその一例だし、それを許容するためにC独特の柔軟な(=至る所unspecified)型/メモリモデルを拵えたわけで
あれ、今やどっちも負債になってるような…
いや理論上頑張ればできるけど、まあ頑張ればね?
日本PC市場でのPC向けUNIX(minix/bsd/linux)本格参戦前(90'後半?)の情報源は、彼に負う所が多かったろう、というバイアスはまあある
大学にでも所属してないとUNIX機に触る機会も無かったし、俺のように>>383のようなサンプルを見て仕様を想像しただろうアマチュア実装(だからmanページは付いてない)が流布していた
なぜCはUNIX文化から脱却できたのか?という(>>376を念頭に置いた)考察ね
bwkの著作にはCP/M, DOS, winプログラ厶の例が多いし、アーキテクチャ/OS間のポータビリティやアルファベット圏以外への進出を真剣に考えてた稀有な人なのは間違いなかろう
wchar_tやらを提唱したのはその一例だし、それを許容するためにC独特の柔軟な(=至る所unspecified)型/メモリモデルを拵えたわけで
あれ、今やどっちも負債になってるような…
いや理論上頑張ればできるけど、まあ頑張ればね?
386デフォルトの名無しさん (テテンテンテン MM4f-1Ruw)
2023/02/10(金) 08:31:20.48ID:/qli6azmM カーニハンのWikipediaのページには、C言語の作成には全く関わっていないと書いてあるぞ
出典のインタビューにはリッチーが全部やったと言っている
出典のインタビューにはリッチーが全部やったと言っている
387デフォルトの名無しさん (スフッ Sd5f-ZaaW)
2023/02/10(金) 09:02:55.50ID:IpbZJCuZd なんか色々とそれっぽい事書いてるけど中身全くないのにワロタ
388デフォルトの名無しさん (スププ Sd5f-g5ke)
2023/02/10(金) 13:52:45.73ID:u7Z+Ehuld >>386
だからライターとしての側面を述べてるのだが
だからライターとしての側面を述べてるのだが
389デフォルトの名無しさん (ワッチョイ 8f12-KDf3)
2023/02/10(金) 14:24:32.35ID:rXRs96IF0 相方を持ち上げるために
自分は何もしてないよと謙るやつか
自分は何もしてないよと謙るやつか
390デフォルトの名無しさん (スププ Sd5f-g5ke)
2023/02/10(金) 15:51:06.46ID:OadphjcVd wchar_tに関しては確か日本語版2版に訳者がKへ吹き込んだ、という記述が
いわゆるK&R以外にもK&R共著は無数にあるが、おおむねイノベーターがRでKがまとめ役というのは察せられるし、そこに異論はないよ
いわゆるK&R以外にもK&R共著は無数にあるが、おおむねイノベーターがRでKがまとめ役というのは察せられるし、そこに異論はないよ
391デフォルトの名無しさん (アウアウウー Sa93-HC4e)
2023/02/10(金) 20:03:34.55ID:fRHwVLJ/a おまえらかっこつけんな
392デフォルトの名無しさん (ワッチョイ 4f5f-NCx9)
2023/02/10(金) 21:52:14.87ID:CNGsx6gg0 LISPに言ってくれ
393デフォルトの名無しさん (ワッチョイ 7f63-4osW)
2023/02/10(金) 22:02:01.42ID:ECKlR5jZ0 カギ括弧で勘弁
394デフォルトの名無しさん (ワッチョイ 8a79-sQVB)
2023/02/11(土) 17:33:42.32ID:naJCJAFi0 名前カニチャーハンぽいから仕事してなくても許すね
395デフォルトの名無しさん (スーップ Sdaa-DQuG)
2023/02/11(土) 21:40:15.68ID:vXc/j/A4d >>394
はずしたなw
はずしたなw
396デフォルトの名無しさん (ワッチョイ 1e46-kPwk)
2023/02/12(日) 05:54:47.01ID:DTNrGkO70 >>394
かに飯じゃないんだ。charは何処へ消えたの。
かに飯じゃないんだ。charは何処へ消えたの。
397デフォルトの名無しさん (ワッチョイ 8aad-D0vN)
2023/02/13(月) 03:01:58.65ID:euuzmFvH0 Kani & chaRhan
398デフォルトの名無しさん (テテンテンテン MMc6-Dj+E)
2023/02/13(月) 03:07:30.87ID:ww0US2bcM こん平を思い出すな…
399デフォルトの名無しさん (ワッチョイ 835f-uIvN)
2023/02/14(火) 09:52:16.15ID:SWO7K81V0 カニ入ってる、あぁんリッチ〜
400デフォルトの名無しさん (スッププ Sdaa-DQuG)
2023/02/14(火) 15:36:46.24ID:aItu9g/Ad ファミ通のお習字コーナーかよw
401デフォルトの名無しさん (ワッチョイ 477c-7Kef)
2023/02/15(水) 16:00:13.19ID:ficf9YEj0 最近、Cが熱いのは、どのフィールドですか?
pythonなら、人工知能、みたいな
pythonなら、人工知能、みたいな
402デフォルトの名無しさん (ラクッペペ MMc6-+vFv)
2023/02/15(水) 16:15:56.41ID:qFuD6UUNM エンベデッド
403デフォルトの名無しさん (ワッチョイ ca7c-D0vN)
2023/02/15(水) 16:24:04.96ID:aDsLy0wQ0 純粋なCって実際使われている気がしないんだがなぁ
結局C++使ってるんじゃね?
組み込みとかでさえC/C++じゃなくなりつつあるような
結局C++使ってるんじゃね?
組み込みとかでさえC/C++じゃなくなりつつあるような
404デフォルトの名無しさん (ワッチョイ 1e63-D0vN)
2023/02/15(水) 16:44:40.14ID:FSuJDOWl0 LinuxはC一筋です
405デフォルトの名無しさん (ワッチョイ 8aad-D0vN)
2023/02/15(水) 19:45:43.63ID:yIa7rkEJ0 Linux は Rust も使われ始めた。
https://codezine.jp/article/detail/17038
https://codezine.jp/article/detail/17038
406デフォルトの名無しさん (ワッチョイ 4a4b-C/iO)
2023/02/15(水) 20:07:02.73ID:D5gZ9dH30 >>403
自動車関係の組み込み開発してるけど純粋なC使ってるね
自動車関係の組み込み開発してるけど純粋なC使ってるね
407デフォルトの名無しさん (ワッチョイ 1e46-kPwk)
2023/02/15(水) 22:41:28.51ID:PTreX2Lr0 不純なCって...
408デフォルトの名無しさん (ワッチョイ 1e63-D0vN)
2023/02/15(水) 22:43:54.06ID:FSuJDOWl0 年齢確認をちゃんとしましょう
409デフォルトの名無しさん (アウアウウー Sa4f-sD5a)
2023/02/16(木) 08:38:15.82ID:XJzboKn0a 不純なCってObjective-Cとかかな
C++はもうCじゃないし
C++はもうCじゃないし
410デフォルトの名無しさん (ワッチョイ 835f-uIvN)
2023/02/16(木) 10:11:37.88ID:G6Y1BfCz0 表向きCってことにしてるけど、C++コンパイラでコンパイルしてて、ひっそりstringだけ使ってるみたいな?
411デフォルトの名無しさん (ラクッペペ MMc6-+vFv)
2023/02/16(木) 11:50:52.25ID:xQKS9LtVM 0bリテラルやビットフィールド順序指示子などの独自拡張あり
412デフォルトの名無しさん (ワッチョイ 1e63-D0vN)
2023/02/16(木) 11:53:11.52ID:jE/BygjJ0 C言語仕様に取り込んでほしかった
413デフォルトの名無しさん (ワッチョイ a712-NLDk)
2023/02/16(木) 13:40:46.45ID:kLJI764s0 0bを0xに変換するフィルタくらいなら、すぐできるだろ
414デフォルトの名無しさん (テテンテンテン MMc6-Dj+E)
2023/02/16(木) 13:50:49.50ID:5p7a/1XmM 0bはC23で標準化されるよ
415デフォルトの名無しさん (テテンテンテン MMc6-Dj+E)
2023/02/16(木) 13:54:29.69ID:5p7a/1XmM digit separatorも追加されたから
0b1100'0011'0101'0011
みたいな書き方が出来る
0b1100'0011'0101'0011
みたいな書き方が出来る
416デフォルトの名無しさん (ワッチョイ 4a7c-WEwL)
2023/02/16(木) 15:47:22.38ID:oZu+eRtF0 'がセパレーターなのか。
組み込みで0bが使える処理系は以前からあるけど、
VerilogやVHDLみたく0b1101_0100のようなセパレーターが使えなくてバグの元でしかなかった。
組み込みで0bが使える処理系は以前からあるけど、
VerilogやVHDLみたく0b1101_0100のようなセパレーターが使えなくてバグの元でしかなかった。
417デフォルトの名無しさん (アウアウウー Sa4f-STvZ)
2023/02/16(木) 17:05:43.13ID:5AcA3bi5a 不純な C って Win32API のことかな
418デフォルトの名無しさん (ワッチョイ de02-6did)
2023/02/16(木) 17:21:05.96ID:XEsPtkpG0 セパレータに'は文字リテラルとの曖昧性でパースが面倒そうな…
0b表記はtccでさえサポートしてる(セパレータ_, 'は不可)し、俺の普段使いで0b表記を受け付けないのは多分pccくらい
C界隈では区切り文字と桁数はロケールの管轄(闇)という事になってるけど、簡潔に明示指定できるだけで単純にデバッグ出力も読みやすくなるよね?
オクテット区切りなら
ooo_ooo、xx_xxやbbbbbbbb_bbbbbbbb
ニブル区切りはbbbb_bbbb
等
先行例としてlisp系のformatディレクティブを参考までに
"~[:][base,wid,pad,delim,]R"
Rは専用のb,o,d,xか、rで任意進数を指定
:はデフォルト(wid=3, delim=',)
例: "~:d"→123,456,789
0b表記はtccでさえサポートしてる(セパレータ_, 'は不可)し、俺の普段使いで0b表記を受け付けないのは多分pccくらい
C界隈では区切り文字と桁数はロケールの管轄(闇)という事になってるけど、簡潔に明示指定できるだけで単純にデバッグ出力も読みやすくなるよね?
オクテット区切りなら
ooo_ooo、xx_xxやbbbbbbbb_bbbbbbbb
ニブル区切りはbbbb_bbbb
等
先行例としてlisp系のformatディレクティブを参考までに
"~[:][base,wid,pad,delim,]R"
Rは専用のb,o,d,xか、rで任意進数を指定
:はデフォルト(wid=3, delim=',)
例: "~:d"→123,456,789
419デフォルトの名無しさん (スフッ Sdaa-6did)
2023/02/16(木) 17:37:10.74ID:CsQoVivgd >>413
リテラル導入よりまずはprintf/scanfの強化が先かなと、コンパイラやプログラマがすり替えのも楽になるし
一々baseで割ってfputc、i%sep==0の時にはdelimを吐く、なんてコードを何回書捨てたか分からん
リテラル記法導入は文法に関わるので、あくまで標準は保守的に
formatディレクティブはもう既に混沌としてるから、独自拡張もサポート落とすも自由でいいかと
リテラル導入よりまずはprintf/scanfの強化が先かなと、コンパイラやプログラマがすり替えのも楽になるし
一々baseで割ってfputc、i%sep==0の時にはdelimを吐く、なんてコードを何回書捨てたか分からん
リテラル記法導入は文法に関わるので、あくまで標準は保守的に
formatディレクティブはもう既に混沌としてるから、独自拡張もサポート落とすも自由でいいかと
420デフォルトの名無しさん (ワッチョイ 1e63-D0vN)
2023/02/16(木) 18:37:34.78ID:jE/BygjJ0 2進表記は8進表記より使い道多いと思う
421デフォルトの名無しさん (ワッチョイ d301-sPc2)
2023/02/16(木) 19:38:40.25ID:LB1U3BvE0 >>419
printf はともかく scanf なんて使わんだろ
printf はともかく scanf なんて使わんだろ
422デフォルトの名無しさん (ワッチョイ d301-sPc2)
2023/02/16(木) 19:40:44.28ID:LB1U3BvE0423デフォルトの名無しさん (ワッチョイ 6a36-D0vN)
2023/02/17(金) 10:35:53.81ID:49a3FDgU0 8進数なんて8bitPC時代のグラ512色関連以外で使用する場面あるのかと思ってたけど・・・そうか、アレか。
424デフォルトの名無しさん (ワッチョイ de02-6did)
2023/02/17(金) 11:02:28.45ID:DgZQWw4l0 octal(リテラル表記)はutf-8の台頭でCで使う機会はかなり増えたと思うが
陽に扱うならだけど
msb2つを多バイト文字の継続フラグ等に割いてるから本質的には6bitで、hexだと人力では読むのも書くのも厳しい
陽に扱うならだけど
msb2つを多バイト文字の継続フラグ等に割いてるから本質的には6bitで、hexだと人力では読むのも書くのも厳しい
425デフォルトの名無しさん (ワッチョイ de02-6did)
2023/02/17(金) 11:27:19.29ID:DgZQWw4l0 xx表示だとffbb_bbbbの上4bitに対応するx=ffbbが任意な値に化ける
ooo表記だとff_bbb_bbbで良い感じ
ooo表記だとff_bbb_bbbで良い感じ
426デフォルトの名無しさん (ワンミングク MMfa-7nFJ)
2023/02/17(金) 13:16:42.61ID:w2wgHjMGM 10進数のテーブルデータ記述するのに桁合わせのつもりで先頭に0を書いた苦い思い出
427デフォルトの名無しさん (オッペケ Sra3-jQmO)
2023/02/17(金) 13:53:50.60ID:2H95YDcjr なんで8進定数のプレフィックスは0oじゃなくて0なんかね?
428デフォルトの名無しさん (テテンテンテン MMc6-Dj+E)
2023/02/17(金) 14:15:10.27ID:fMLNQIVeM 人間の指が4本だったら、普段使う数字が8進数になって、コンピューターとの相性も良かったのになw
429デフォルトの名無しさん (ワッチョイ 8be4-eTyR)
2023/02/17(金) 14:24:53.50ID:vP8p7Q2U0 >>422
システムコールを使ったちょっとしたコーディングの場合、オープンモードはdefineされたやつ使うけど、ファイルモードは8進の値を直接指定することが多かった
open("foo", O_CREAT|O_RDWR, 0644)
ここに S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH なんて書いたことはないな
ちゃんとしたコーディングの場合にはファイルモードを指定する別途関数なり定数定義を用意してたりするからそっちの定義ではdefineされた値を使うことはあったけど
システムコールを使ったちょっとしたコーディングの場合、オープンモードはdefineされたやつ使うけど、ファイルモードは8進の値を直接指定することが多かった
open("foo", O_CREAT|O_RDWR, 0644)
ここに S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH なんて書いたことはないな
ちゃんとしたコーディングの場合にはファイルモードを指定する別途関数なり定数定義を用意してたりするからそっちの定義ではdefineされた値を使うことはあったけど
430デフォルトの名無しさん (ワッチョイ 8be4-eTyR)
2023/02/17(金) 14:44:42.94ID:vP8p7Q2U0 直接openシステムコール使ってるオープンソースのプログラム、シェルあたりならやってそうだと思って簡単にアクセスできそうなソースコード探してみた
bash見つからなくてzshは見つかったので見てみたらやっぱり直接0600とか書いてるな
https://sourceforge.net/p/zsh/code/ci/master/tree/Src/utils.c#l2216
その上でumask(0177)とかもやってる
bash見つからなくてzshは見つかったので見てみたらやっぱり直接0600とか書いてるな
https://sourceforge.net/p/zsh/code/ci/master/tree/Src/utils.c#l2216
その上でumask(0177)とかもやってる
431デフォルトの名無しさん (スプッッ Sd4a-nNBs)
2023/02/17(金) 18:22:15.54ID:G6mVZKAVd ESCシーケンスを使うときは¥033
432デフォルトの名無しさん (ワッチョイ d301-GLFt)
2023/02/17(金) 20:16:44.94ID:KJxAAApA0 >>430
まあ、コピーライト見たらわかる通りそういう時代だったしね
> * Copyright (c) 1992-1997 ポール・ファルスタッド
マジックナンバー警察じゃないけど流石に今時0777なんて書いてたらレビューで指摘するわ
まあ、コピーライト見たらわかる通りそういう時代だったしね
> * Copyright (c) 1992-1997 ポール・ファルスタッド
マジックナンバー警察じゃないけど流石に今時0777なんて書いてたらレビューで指摘するわ
433デフォルトの名無しさん (ワッチョイ 8be4-eTyR)
2023/02/17(金) 20:50:25.13ID:vP8p7Q2U0 >>432
git のソースコードのリポジトリを clone したのがあったので、git grep O_CREATとかgit grep umask とかするとみんな0600とか書きまくりだった
git blame してみると2021年とか最近でもやりまくり
66e905b7dd0 (XXX 2021-08-25 22:16:46 +0200 82) fd = xopen(index_name, O_CREAT|O_EXCL|O_WRONLY, 0600);
66e905b7dd0 (XXX 2021-08-25 22:16:46 +0200 252) fd = xopen(rev_name, O_CREAT|O_EXCL|O_WRONLY, 0600);
git のソースコードのリポジトリを clone したのがあったので、git grep O_CREATとかgit grep umask とかするとみんな0600とか書きまくりだった
git blame してみると2021年とか最近でもやりまくり
66e905b7dd0 (XXX 2021-08-25 22:16:46 +0200 82) fd = xopen(index_name, O_CREAT|O_EXCL|O_WRONLY, 0600);
66e905b7dd0 (XXX 2021-08-25 22:16:46 +0200 252) fd = xopen(rev_name, O_CREAT|O_EXCL|O_WRONLY, 0600);
434デフォルトの名無しさん (アウアウエー Sa13-nl9c)
2023/02/18(土) 09:01:47.10ID:4a504/qwa C#について教えてください! https://smartlabo-hp.com/login-intermediate/ 上記ページを見てログインボタンを作成しました。 このページ内にあるcsvファイルの内容に加えて同csvファイルの[2]にログイン状態という列を足したいです。 ログインしてない状態では[2]は常に0、ログイン成功したら[2]に1が書かれるようにするにはどうすればいいのでしょうか? ご教授よろしくお願いします。
435デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 09:17:57.34ID:/Gi8XN260436デフォルトの名無しさん (スププ Sd43-CAVk)
2023/02/18(土) 09:20:32.20ID:/rOnqr64d ハノイの塔 再帰のアルゴリズムがさっぱりわからない
437デフォルトの名無しさん (スププ Sd43-CAVk)
2023/02/18(土) 09:21:30.09ID:/rOnqr64d ハノイの塔 再帰のアルゴリズムがさっぱりわからない
438デフォルトの名無しさん (ワッチョイ 755f-rVJW)
2023/02/18(土) 09:36:15.97ID:AfjXtSgB0 スタックから覚えようね
439デフォルトの名無しさん (アウアウエー Sa13-nl9c)
2023/02/18(土) 10:11:08.15ID:4a504/qwa >>435
すいません
すいません
440デフォルトの名無しさん (ワッチョイ 232b-+m/E)
2023/02/18(土) 12:46:07.82ID:/8v09ncn0 >>426
8進数なのに8と9が使える驚異の仕様だよ
8進数なのに8と9が使える驚異の仕様だよ
441デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 12:50:39.59ID:/Gi8XN260 ctype.hに
isdigitとisxdigitがあるのに
isodigitがないというのが
その問題の根にある
isdigitとisxdigitがあるのに
isodigitがないというのが
その問題の根にある
442デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 13:42:13.38ID:c4QxGie20 >>433
何を必死になってるのかよくわからんが老害の悪癖は治らないってだけの話かと
何を必死になってるのかよくわからんが老害の悪癖は治らないってだけの話かと
443デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 13:44:46.64ID:c4QxGie20 >>440
規格では使えないことになってるしまともなコンパイラならエラーにすると思うぞ
規格では使えないことになってるしまともなコンパイラならエラーにすると思うぞ
444デフォルトの名無しさん (ワッチョイ a397-vL47)
2023/02/18(土) 14:09:47.51ID:BJBnPVcc0445デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 14:13:43.35ID:/Gi8XN260 みんな日常的によく使う8進定数「0」
446デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/18(土) 15:46:52.83ID:ke/LtjiK0 そうか、オレは二進数の0をよく使う
447デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 16:01:46.62ID:/Gi8XN260 ソースコード上での記数法と
実行環境での表現を混同してる?
実行環境での表現を混同してる?
448デフォルトの名無しさん (ワッチョイ 23ad-BTrK)
2023/02/18(土) 16:04:29.75ID:dElKqib40 >>444
じゃあ8で。
じゃあ8で。
449デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 16:16:07.43ID:/Gi8XN260 なんでオーにしなかったのかとは俺も思う
特に小文字オーなら誤読しにくいし
特に小文字オーなら誤読しにくいし
450デフォルトの名無しさん (ワッチョイ 2379-u8a6)
2023/02/18(土) 16:31:09.02ID:nz9Z1NDi0 1文字でもキーワードを少なくしたかった当時のお洒落だったんだよ
8進表記はunix系OSが全滅すれば廃止でもいいと思うね
8進表記はunix系OSが全滅すれば廃止でもいいと思うね
451デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/18(土) 16:35:07.64ID:ke/LtjiK0 全滅するのに数百年はかかりそう
452デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 16:40:17.45ID:/Gi8XN260 キーワードつーてもサフィックスだからね
繋がった単語の中の部分なわけで
他の識別子との衝突の虞はない
繋がった単語の中の部分なわけで
他の識別子との衝突の虞はない
453デフォルトの名無しさん (ワッチョイ 3d12-+91A)
2023/02/18(土) 16:42:06.93ID:/Gi8XN260 あ、しかし
int o33 = o33;
みたいになったらマズいのか
英字サフィックスは
int o33 = o33;
みたいになったらマズいのか
英字サフィックスは
454デフォルトの名無しさん (ワッチョイ 85e4-XsNi)
2023/02/18(土) 16:47:35.72ID:J9rEVsST0455デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/18(土) 16:47:37.88ID:ke/LtjiK0 "%05d" こんな風な指定して出力した10進数を、読み取らせても大丈夫だろうか?
456デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 16:49:48.25ID:c4QxGie20457デフォルトの名無しさん (ワッチョイ b510-BTrK)
2023/02/18(土) 16:50:05.14ID:FZadOySQ0 >unix系OSが全滅すれば
泥もiOSもunix系だよね?
ゲーム機も基本OSは・・・
泥もiOSもunix系だよね?
ゲーム機も基本OSは・・・
458デフォルトの名無しさん (ワッチョイ 4b02-bChI)
2023/02/18(土) 16:52:50.83ID:6dDb+no40 (8じゃなく)6の倍数bitワードのマシンで産まれた痕跡だっけか
>>443
8と9が混じってるかどうかで8進か10進か勝手に解釈を変える方がよっぽど厄介だから、不正として弾くのが正しいね
俺は8進が好きだし、幸いやらかした経験も無いけど
他言語では明示的な0oプレフィックスもよく見掛けるし、もちろん使えるなら使おう
>>443
8と9が混じってるかどうかで8進か10進か勝手に解釈を変える方がよっぽど厄介だから、不正として弾くのが正しいね
俺は8進が好きだし、幸いやらかした経験も無いけど
他言語では明示的な0oプレフィックスもよく見掛けるし、もちろん使えるなら使おう
459デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 17:02:18.46ID:c4QxGie20460デフォルトの名無しさん (スッププ Sd43-3ehY)
2023/02/18(土) 17:08:03.05ID:QF/qRD4Qd461デフォルトの名無しさん (ワッチョイ 2379-u8a6)
2023/02/18(土) 17:13:05.59ID:nz9Z1NDi0 IT業界でもwhitelist→allowlistとか言葉狩り起きてるしそのうち言語にまでLBGT配慮()きそうだわな
int ニガー = 07214545;
エラー:差別用語です
int ニガー = 07214545;
エラー:差別用語です
462デフォルトの名無しさん (ワッチョイ 85e4-XsNi)
2023/02/18(土) 17:15:09.07ID:J9rEVsST0 >>459
例えばリポジトリ直下の copy.c で定義されている copy_file(dst,src,mode) その関数自身の定義に 0666 とか直接使っている
まあこの関数は 2008 年とかに作られたものだけど、その関数を使うコードが今月コミットされていて引数に 0666 直指定
a5792e9d092 xxxxxxxxxx 2023-02-06 20:08:11 +0100 2293) if (copy_file(dest, rebase_path_squash_msg(), 0666)) {
他 copy_file 使っているところも全部直指定
例えばリポジトリ直下の copy.c で定義されている copy_file(dst,src,mode) その関数自身の定義に 0666 とか直接使っている
まあこの関数は 2008 年とかに作られたものだけど、その関数を使うコードが今月コミットされていて引数に 0666 直指定
a5792e9d092 xxxxxxxxxx 2023-02-06 20:08:11 +0100 2293) if (copy_file(dest, rebase_path_squash_msg(), 0666)) {
他 copy_file 使っているところも全部直指定
463デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 17:19:06.07ID:c4QxGie20 >>460
確かに最初見た時は俺も はあ?ってなったわw
確かに最初見た時は俺も はあ?ってなったわw
464デフォルトの名無しさん (ワッチョイ 85e4-XsNi)
2023/02/18(土) 17:19:18.78ID:J9rEVsST0 >>442
比較的新しめ?のnginxなんかは流石に関数の引数に 0600 とか書いてないけど、それでもOSのヘッダファイルの定数定義は使ってないな
自前の定義に #define NGX_FILE_DEFAULT_ACCESS 0644 とかだ
これも老害になっちゃう?
比較的新しめ?のnginxなんかは流石に関数の引数に 0600 とか書いてないけど、それでもOSのヘッダファイルの定数定義は使ってないな
自前の定義に #define NGX_FILE_DEFAULT_ACCESS 0644 とかだ
これも老害になっちゃう?
465デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/18(土) 17:26:26.26ID:c4QxGie20466デフォルトの名無しさん (ワッチョイ 2379-u8a6)
2023/02/18(土) 17:27:46.90ID:nz9Z1NDi0467デフォルトの名無しさん (ワッチョイ 4501-oojT)
2023/02/18(土) 19:21:30.21ID:hE3AXWNH0 0x 0o 0b (0d)
468デフォルトの名無しさん (ワッチョイ 4bf0-+91A)
2023/02/19(日) 06:15:13.00ID:B9Nm4zxk0 否定から入ったり無礼な言葉ばかり使う人って他人から相談されなくなるよね
469デフォルトの名無しさん (ワッチョイ 1501-BTrK)
2023/02/19(日) 10:30:13.08ID:85faJvYM0 それって思いっきりアスペの特徴なんだよな
470デフォルトの名無しさん (アウアウウー Sa49-0fjh)
2023/02/19(日) 10:43:35.95ID:xrmlsZvMa だからネットでイキってるんだろ
471デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/19(日) 10:58:14.43ID:5TCni8wB0 ダヴィンチもエジソンもアインシュタインもモーツァルトもイチローも
みなアスペルガーなんだ
みなアスペルガーなんだ
472デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/19(日) 11:07:26.13ID:xSIr/CQB0473デフォルトの名無しさん (アウアウウー Sa49-0fjh)
2023/02/19(日) 12:33:47.26ID:rUsPVZJ7a ダヴィンチもエジソンもアインシュタインもモーツァルトもイチロー並みの才能があれば煙たがられることなく受け入れられるということよ。
474デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/19(日) 12:50:21.37ID:oybarVkGd475デフォルトの名無しさん (JP 0Hf9-KqH4)
2023/02/19(日) 12:53:18.65ID:F5EkyCpBH ムチムチ
476デフォルトの名無しさん (ワッチョイ 23ad-BTrK)
2023/02/19(日) 13:01:28.32ID:yOeRloac0 >>449
英語では 0 (ゼロ) と書いて o (おー) と読むこともあるので、それが影響したのかも知れないね。
英語では 0 (ゼロ) と書いて o (おー) と読むこともあるので、それが影響したのかも知れないね。
477デフォルトの名無しさん (ワッチョイ 1501-rc3u)
2023/02/19(日) 14:04:50.86ID:xSIr/CQB0478デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/19(日) 14:48:58.38ID:5TCni8wB0 アスペルガーは自分に対しても他人に対しても容赦しないから
凡人に嫌われる
才能のせいではない
凡人に嫌われる
才能のせいではない
479デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/19(日) 14:55:52.34ID:BF2g/YB8d ギフテッドは必ずしも自閉症を伴わない
480デフォルトの名無しさん (ワッチョイ 9502-Tk/Z)
2023/02/20(月) 04:15:44.39ID:+uPK1ifA0 >>436
再帰をしないなら、コードを書けるの?
再帰をしないなら、コードを書けるの?
481デフォルトの名無しさん (スププ Sd43-CAVk)
2023/02/20(月) 09:47:26.91ID:N/iEiUCGd >>480 チャレンジしたことはないけど、たぶん再帰なしでも書けません。どうか御教示をお願いします。
482デフォルトの名無しさん (スププ Sd43-CAVk)
2023/02/20(月) 09:50:41.85ID:N/iEiUCGd ハノイの塔は再帰でしか解けない
483デフォルトの名無しさん (スフッ Sd43-Sim7)
2023/02/20(月) 09:51:19.24ID:cTmdkEXkd んなこたあない
484デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/20(月) 09:57:18.63ID:KyZtaEjed 待ち行列やLIFOは再帰的な処理を非再帰にするときの友
485デフォルトの名無しさん (スップ Sd03-b1l8)
2023/02/20(月) 11:00:02.06ID:Htkx1bCsd 再帰呼び出しする所をpushに変えてgoto最初
returnの所をpopに変えてgoto最初
時間があればそこからgotoを取り除く
gotoが輝く場面
returnの所をpopに変えてgoto最初
時間があればそこからgotoを取り除く
gotoが輝く場面
486デフォルトの名無しさん (スププ Sd43-CAVk)
2023/02/20(月) 11:21:38.14ID:N/iEiUCGd >>485 goto文を使うのですね 覚えておきます
487デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/20(月) 11:58:19.08ID:KyZtaEjed アンチgoto教信者は近頃減ってきているが
絶滅はまだ先のようだな
絶滅はまだ先のようだな
488デフォルトの名無しさん (ワッチョイ a397-vL47)
2023/02/20(月) 12:38:57.43ID:sAm6cEmU0 スパゲティGotoをたんと召し上がれ!
489デフォルトの名無しさん (スップ Sd03-b1l8)
2023/02/20(月) 13:04:25.72ID:Htkx1bCsd 再帰からループへの変換はgotoのある言語なら機械的にできるからね
存在すら許さない言語は発想を阻害してると言える
存在すら許さない言語は発想を阻害してると言える
490デフォルトの名無しさん (スッププ Sd43-3ehY)
2023/02/20(月) 13:35:56.24ID:JqcJZDsUd while(スタックが空になるまで){
pop();
...
}
って書き始めるけどな
pop();
...
}
って書き始めるけどな
491デフォルトの名無しさん (ワッチョイ 2379-u8a6)
2023/02/20(月) 21:19:52.57ID:I5iz8R+L0492デフォルトの名無しさん (ワッチョイ 1bba-/+FQ)
2023/02/20(月) 23:51:00.80ID:7qph/rf50493デフォルトの名無しさん (ワッチョイ fd10-j6dJ)
2023/02/21(火) 00:08:57.34ID:Cn1Xq+JJ0 がんばってgoto無しで作ったりしてたなあ
494デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/21(火) 06:59:46.53ID:1n1W4gUgd push/popはルール違反て何それ?
495デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/21(火) 09:59:11.37ID:MGN7/c1b0 「俺がルールブックだ」
496デフォルトの名無しさん (スップ Sd43-Tk/Z)
2023/02/21(火) 10:33:24.95ID:5S8ZyEUUd 「ウリが蟹飯リッチニダ」
497デフォルトの名無しさん (ワッチョイ 23ad-BTrK)
2023/02/21(火) 10:51:10.49ID:NudgdpLh0 豪華な蟹飯が思い浮かんだ
498デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/21(火) 13:43:23.05ID:1n1W4gUgd 苫小牧だっけ?
499デフォルトの名無しさん (アウアウエー Sa13-1XUy)
2023/02/21(火) 16:27:46.36ID:dWpsoJfPa500デフォルトの名無しさん (ワッチョイ 755f-rVJW)
2023/02/21(火) 16:50:09.17ID:ncQgkmT30 チャットジピティれカス
501デフォルトの名無しさん (スププ Sd43-CAVk)
2023/02/21(火) 17:05:45.18ID:j4WOJdo9d >>499 見事です 私はまだ初級なのでvectorだのcstdioなど見たこともありません
502デフォルトの名無しさん (スップ Sd43-Tk/Z)
2023/02/21(火) 17:54:02.02ID:5S8ZyEUUd >>499
お、動いた動いた!
お、動いた動いた!
503デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/21(火) 17:55:02.20ID:MGN7/c1b0 goto が一つもない・・・
504デフォルトの名無しさん (アウアウウー Sa49-UkxH)
2023/02/21(火) 19:30:27.79ID:oAMbgY5Ra goto文は禁じてではないかな?
C言語では
C言語では
505デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/21(火) 19:48:08.10ID:1n1W4gUgd 俺様ルールは興味ないから
506デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/21(火) 19:50:05.73ID:MGN7/c1b0 CPUレベルまで行くと、GOTOは使いまくりだろう
507デフォルトの名無しさん (スプッッ Sd43-avQ1)
2023/02/21(火) 19:57:40.07ID:1n1W4gUgd 機械語1命令ごとにPCを更新するのもgotoかw
508デフォルトの名無しさん (テテンテンテン MMcb-7AbM)
2023/02/21(火) 20:39:53.11ID:pHGJPw2cM gotoなんて所詮関数内にしか飛べない
関数が小さければなんて事はない
巨大な関数はgoto以前に悪
関数が小さければなんて事はない
巨大な関数はgoto以前に悪
509デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/21(火) 21:02:34.32ID:MGN7/c1b0 昔いた現場は、1関数ごとに設計書を何枚も書かされてたな
それでみんな、関数の数を極力減らしてた
行き着くところ初期とメインと終了の三つ
それぞれが何百行にもなってしまったw
それでみんな、関数の数を極力減らしてた
行き着くところ初期とメインと終了の三つ
それぞれが何百行にもなってしまったw
510デフォルトの名無しさん (ワッチョイ 2379-u8a6)
2023/02/21(火) 22:12:19.48ID:QJTSRl8U0 そういうのいいから
511デフォルトの名無しさん (ワッチョイ e379-+91A)
2023/02/21(火) 22:59:26.21ID:fpEKur8e0 硬直化して目的を忘れた「管理」に泣かされたもんだけど
それは昭和も今も変わっとらんだろ
それは昭和も今も変わっとらんだろ
512デフォルトの名無しさん (ワッチョイ cb63-BTrK)
2023/02/21(火) 23:48:29.43ID:MGN7/c1b0 プロジェクト管理はそのうちAIがやるようになるんだろうか
513デフォルトの名無しさん (ワッチョイ 0d02-zg7b)
2023/02/22(水) 03:11:04.32ID:ZjvNTHuW0 AI「壊れるまで働け、人間共よ」
514デフォルトの名無しさん (スッププ Sd43-3ehY)
2023/02/22(水) 06:39:57.73ID:6aYkdgkrd >>491
continueを知らないのか?
continueを知らないのか?
515デフォルトの名無しさん (ワッチョイ 6502-bChI)
2023/02/22(水) 15:13:03.32ID:rwr+6TWF0 >>415
やはり構文解析器(プリプロセッサ含む)に手を入れないとデリミタに'は難しそうに思うの
暇だったので>>413を(ナイーブに)
# define b(n) (strint(#n, 1u))
# define t(n) (strint(#n, 2u))
# define o(n) (strint(#n, 3u))
# define x(n) (strint(#n, 4u))
unsigned
strint(const char cs[], const unsigned wt){
long d;
unsigned u=0;
do { // valid digis: ascii '0'..'^'
if((d=*cs)<0||d>'_'-'0'+1) continue;
u<<=wt, u+=d;
} while(*cs++)
return u
}
b('1100'1010'1111'1110)
b(1100_1010_1111_1110)
o(145;366)
x(<:!?>)
全て0xCAFEに等しい、ただし' が奇数個のケース、 b(1100'1010'1111'1110)
マクロ引数を区切る,の使用はプリプロセッサがエラー吐く(cc -Eの段階)
missing terminating '/" character
too much argument
etc. (pcc/tcc)
ex/m4とか外部ツールでプリプロセスするなら別だけど、c/cプリプロセッサの構文内では不可能に思う(当然リテラルとして自然な仕様拡張も)
やはり構文解析器(プリプロセッサ含む)に手を入れないとデリミタに'は難しそうに思うの
暇だったので>>413を(ナイーブに)
# define b(n) (strint(#n, 1u))
# define t(n) (strint(#n, 2u))
# define o(n) (strint(#n, 3u))
# define x(n) (strint(#n, 4u))
unsigned
strint(const char cs[], const unsigned wt){
long d;
unsigned u=0;
do { // valid digis: ascii '0'..'^'
if((d=*cs)<0||d>'_'-'0'+1) continue;
u<<=wt, u+=d;
} while(*cs++)
return u
}
b('1100'1010'1111'1110)
b(1100_1010_1111_1110)
o(145;366)
x(<:!?>)
全て0xCAFEに等しい、ただし' が奇数個のケース、 b(1100'1010'1111'1110)
マクロ引数を区切る,の使用はプリプロセッサがエラー吐く(cc -Eの段階)
missing terminating '/" character
too much argument
etc. (pcc/tcc)
ex/m4とか外部ツールでプリプロセスするなら別だけど、c/cプリプロセッサの構文内では不可能に思う(当然リテラルとして自然な仕様拡張も)
516デフォルトの名無しさん (スフッ Sd43-bChI)
2023/02/22(水) 15:22:17.41ID:mafEi4nvd517デフォルトの名無しさん (スフッ Sd43-bChI)
2023/02/22(水) 15:23:53.30ID:mafEi4nvd the (decimal) number 123です
518デフォルトの名無しさん (スフッ Sd43-bChI)
2023/02/22(水) 15:28:02.92ID:mafEi4nvd 299,792,458と書けたら素敵だけど
ds(299,792,458)が引数を区切る,と区別出来ないから無理だね
ds(299,792,458)が引数を区切る,と区別出来ないから無理だね
519デフォルトの名無しさん (テテンテンテン MMcb-7AbM)
2023/02/22(水) 16:23:34.63ID:GDrSYSMbM ほかの言語では、123_456_789の様にアンダーバーで区切るのが多い
Cでも出来たと思うけどなぜか'なんだよな…
アンダーバーが良かった
Cでも出来たと思うけどなぜか'なんだよな…
アンダーバーが良かった
520デフォルトの名無しさん (ワッチョイ cbcf-h1Ka)
2023/02/22(水) 16:41:13.08ID:3MJ5isf30 C++に合わせたんでしょその方が都合がいいだろうし
521デフォルトの名無しさん (ワッチョイ cbcf-h1Ka)
2023/02/22(水) 16:52:25.15ID:3MJ5isf30522デフォルトの名無しさん (スフッ Sd43-bChI)
2023/02/22(水) 18:12:39.68ID:/HhOnmf9d 規格を批判してるんだが
523デフォルトの名無しさん (ワッチョイ ed02-bChI)
2023/02/23(木) 02:20:36.04ID:zOdHjjZs0 まだワーキングドラフトだから対応するもしないのも自由だと思うし、c2xはアトリビュート関連くらいしか追ってないが、一応意見を
せめて不正なトークンとして弾ける約物にしてほしいな
0b10101011未対応(0cでも何でも)は不正な8進
トークン構成文字0b1010_1011なら不正な型サフィックスとして不正なトークンを報告できるので、ユーザに手直しさせるのも自明
パース状態をトグルする'はEOFまで食うので、エラーが報告されたとしてもcryptic
頻用したと仮定すれば、1/2の確率で釣り合うって字句解析をパスしてしまうのも厄介
せめて不正なトークンとして弾ける約物にしてほしいな
0b10101011未対応(0cでも何でも)は不正な8進
トークン構成文字0b1010_1011なら不正な型サフィックスとして不正なトークンを報告できるので、ユーザに手直しさせるのも自明
パース状態をトグルする'はEOFまで食うので、エラーが報告されたとしてもcryptic
頻用したと仮定すれば、1/2の確率で釣り合うって字句解析をパスしてしまうのも厄介
524デフォルトの名無しさん (ワッチョイ ed02-bChI)
2023/02/23(木) 04:08:08.64ID:zOdHjjZs0 >>416
俺は16bit程度なら一行で書いてしまうけど、より大きい整数型なら行を分けて書いてるな
(u)int64/128_tなんかで二次元データエンコードする時はこんな感じで
uint64_t plaid = 0b\
01010101\
10101010\
...\
;
ゲーム盤、行列、画像、畳み込みカーネル、マスク等、重宝する機会は多い
pbmそのままだからstatic変数にスクリプトでブチ込むのも楽で非常に重宝
普通(2)/8/10/16のみで任意進数(ビット深度)を指定できないのが歯痒いところ
俺は16bit程度なら一行で書いてしまうけど、より大きい整数型なら行を分けて書いてるな
(u)int64/128_tなんかで二次元データエンコードする時はこんな感じで
uint64_t plaid = 0b\
01010101\
10101010\
...\
;
ゲーム盤、行列、画像、畳み込みカーネル、マスク等、重宝する機会は多い
pbmそのままだからstatic変数にスクリプトでブチ込むのも楽で非常に重宝
普通(2)/8/10/16のみで任意進数(ビット深度)を指定できないのが歯痒いところ
525デフォルトの名無しさん (アウアウウー Sa39-ZRtV)
2023/02/25(土) 15:46:50.99ID:2A7WVGnna C++におけるユーザー定義の接尾辞で
_数字 みたいな奴を許可していなかったら桁区切り文字はアンダースコアになってた
_数字 みたいな奴を許可していなかったら桁区切り文字はアンダースコアになってた
526デフォルトの名無しさん (ワッチョイ b6d2-xnN+)
2023/02/26(日) 07:07:10.46ID:Gr0Cvu5K0 だな
527デフォルトの名無しさん (スフッ Sdfa-8fjD)
2023/02/26(日) 07:37:36.32ID:oQAKiXWbd 自己参照構造体を、テキストのコードが難しくて理解できない
528デフォルトの名無しさん (ワッチョイ 7102-3r7D)
2023/02/26(日) 07:49:42.99ID:ymHOkbuH0529デフォルトの名無しさん (ワッチョイ 7102-3r7D)
2023/02/26(日) 07:58:07.27ID:ymHOkbuH0 extern "C"で混ぜるにはもう違いが多過ぎるし、c++と足並み揃えるのやめればいいのに
530デフォルトの名無しさん (ワッチョイ b6d2-xnN+)
2023/02/26(日) 08:42:57.62ID:Gr0Cvu5K0 C++が流行りだした当時のCの財産を捨てずに済むってだけの話で
これから新しく作るものの足かせになるのは本末転倒だよな
これから新しく作るものの足かせになるのは本末転倒だよな
531デフォルトの名無しさん (ワッチョイ 7d10-W5vA)
2023/02/26(日) 12:16:51.44ID:0OyaNSrI0 C言語で構造体の双方リンク理解する前にテキストエディタ作るようなことあったら
激重エディタつくってただろうなぁと経験してもないことを妄想。
1文字挿入→その後ろの文章を全部コピーでずらして・・・
激重エディタつくってただろうなぁと経験してもないことを妄想。
1文字挿入→その後ろの文章を全部コピーでずらして・・・
532デフォルトの名無しさん (ブーイモ MM0e-ORGC)
2023/02/26(日) 18:12:24.76ID:zCQzTRZzM >>531
emacs なんかは1文字挿入のたびに後ろ全部コピーしなくても良いようにギャップバッファという手法を使っていた
emacs なんかは1文字挿入のたびに後ろ全部コピーしなくても良いようにギャップバッファという手法を使っていた
533デフォルトの名無しさん (スッププ Sdfa-6IfF)
2023/02/26(日) 18:34:27.49ID:akN/HRard534デフォルトの名無しさん (テテンテンテン MM0e-CSgJ)
2023/02/26(日) 20:20:17.76ID:Qgs0XTsDM >>532
過去形だけど今もだぞw
ギャップバッファは、最近流行りの複数カーソル使って離れた複数箇所を一気に編集すると、大量にコピーが発生して重くなる可能性がある
なのでこれからテキストエディタを実装するには、Piece Tableを使う方がいいと思われる
過去形だけど今もだぞw
ギャップバッファは、最近流行りの複数カーソル使って離れた複数箇所を一気に編集すると、大量にコピーが発生して重くなる可能性がある
なのでこれからテキストエディタを実装するには、Piece Tableを使う方がいいと思われる
535デフォルトの名無しさん (ワッチョイ 76cf-okFi)
2023/02/26(日) 20:22:02.57ID:OdlyZwjm0 Slackware+JEに入ってたMuleを3年くらい使ってたけど別のエディタに移っちゃったな
悪くないと思うんだけど時代に合ってないというか、貧相な環境の方が使い出があるエディタだったな
悪くないと思うんだけど時代に合ってないというか、貧相な環境の方が使い出があるエディタだったな
536デフォルトの名無しさん (テテンテンテン MM0e-CSgJ)
2023/02/26(日) 20:31:33.93ID:Qgs0XTsDM EmacsとかVimを貧相と思うのは、端末内で動かせるようになってるからだ
GUIはオマケみたいな扱いだ
でも、それはそれで存在意義はある
GUIはオマケみたいな扱いだ
でも、それはそれで存在意義はある
537デフォルトの名無しさん (ワッチョイ da79-Arif)
2023/02/26(日) 20:37:35.64ID:gahU4Yv80 viは来世紀にも残ってそうだから最初に覚えたなあ
eなんとかはデベロッパーのオナニーが透けて見えて気持ち悪すぎた
eなんとかはデベロッパーのオナニーが透けて見えて気持ち悪すぎた
538デフォルトの名無しさん (ワッチョイ 7663-W5vA)
2023/02/26(日) 21:16:43.25ID:fbmwPkIL0 viの様にコマンド覚えなくても使えたから便利だったぞ
539デフォルトの名無しさん (ワッチョイ 76cf-okFi)
2023/02/26(日) 22:04:54.83ID:OdlyZwjm0 >>536
ちゃう、Emacsを貧相だと思ってるんじゃなくて計算機資源が豊かでない環境の方が使い出があるって言ってるんだよ
ちゃう、Emacsを貧相だと思ってるんじゃなくて計算機資源が豊かでない環境の方が使い出があるって言ってるんだよ
540デフォルトの名無しさん (ワッチョイ 7db3-sBbk)
2023/02/26(日) 22:36:28.47ID:0m6hfJUV0 最初に使い込んだエディタの話?
俺はVZだったな
俺はVZだったな
541デフォルトの名無しさん (スップ Sdfa-eMhE)
2023/02/27(月) 04:08:09.05ID:naBje3l2d スレちがいだし
わりとしょうもないレベルの自慢話になってることを警告しておくぞ
わりとしょうもないレベルの自慢話になってることを警告しておくぞ
542デフォルトの名無しさん (スップ Sdda-5jsL)
2023/02/27(月) 07:30:50.50ID:U2h1s9M4d ダム端末使ってた頃はviが有り難かったけど
今となっては当時慣らした人はともかく
若いやつにお奨めするもんじゃない
と俺は思うな
今となっては当時慣らした人はともかく
若いやつにお奨めするもんじゃない
と俺は思うな
543デフォルトの名無しさん (ワッチョイ 2e9a-0raA)
2023/02/27(月) 09:43:18.06ID:jlyK/+pC0544デフォルトの名無しさん (ワッチョイ 7d10-W5vA)
2023/02/27(月) 12:21:44.99ID:3zla3lE+0 >543
Cやる前はアセンブラだったからねぇ。アセンブラでの処理方法をそのままC言語に持ち込んでた。
当時はでっかく領域確保したらその領域で全部処理するって思考しか無かった(自動変数って概念も無し)。
Cやる前はアセンブラだったからねぇ。アセンブラでの処理方法をそのままC言語に持ち込んでた。
当時はでっかく領域確保したらその領域で全部処理するって思考しか無かった(自動変数って概念も無し)。
545デフォルトの名無しさん (スップ Sdda-5jsL)
2023/02/27(月) 12:29:45.17ID:U2h1s9M4d ダミーセクションは使ってたけどね
546デフォルトの名無しさん (アウアウエー Sa02-mjxs)
2023/02/27(月) 17:11:48.94ID:3MgFEhuya >>543
そこはdequeですよ常考
そこはdequeですよ常考
547デフォルトの名無しさん (ワッチョイ 2e9a-0raA)
2023/02/28(火) 10:24:33.59ID:7/0mM3ia0548デフォルトの名無しさん (ワッチョイ 2e9a-0raA)
2023/02/28(火) 10:32:54.86ID:7/0mM3ia0 >>546
listやvectorはほとんど使わない感じ?
listやvectorはほとんど使わない感じ?
549デフォルトの名無しさん (スップ Sdfa-5jsL)
2023/02/28(火) 12:10:45.99ID:dNNgH11Kd スタックはレジスタのバックアップが主な用途で
メモリ変数はグローバルがデフォだった
だから変数表を作ってた
メモリ変数はグローバルがデフォだった
だから変数表を作ってた
550デフォルトの名無しさん
2023/02/28(火) 16:07:40.92ID:Ki6W+L2N0 あの 先頭に戻って検索 するかどうかを維持する変数名ってどんなのがいい?
551デフォルトの名無しさん (ワッチョイ 7d10-W5vA)
2023/02/28(火) 16:44:22.88ID:295BsPXb0 >スタックの操作で領域管理
8086系だとスタックレジスタ直接使うと遅いんじゃなかったっけ?
MOV AX、[SP+10]
とかやるより
MOV AX、[TEMP]
...
TEMP: DW 0000h
ってやる方が速いとか。
BASIC時代のマシン語CALL時のレジスタエリアは16バイトってトラウマが・・・。
8086系だとスタックレジスタ直接使うと遅いんじゃなかったっけ?
MOV AX、[SP+10]
とかやるより
MOV AX、[TEMP]
...
TEMP: DW 0000h
ってやる方が速いとか。
BASIC時代のマシン語CALL時のレジスタエリアは16バイトってトラウマが・・・。
552デフォルトの名無しさん (アウアウウー Sa39-bn+B)
2023/02/28(火) 21:38:56.96ID:EshvOxGGa ダミーセクションって、IBMのメインフレームのアセンブリ言語の DSECTですか?
553デフォルトの名無しさん (ワッチョイ b6d2-xnN+)
2023/02/28(火) 21:47:36.63ID:svcsEAcG0 うん
554デフォルトの名無しさん (スップ Sdfa-eMhE)
2023/03/01(水) 20:42:10.06ID:fErXdR4ud555デフォルトの名無しさん (ワッチョイ 9d5f-XTx3)
2023/03/01(水) 23:36:37.44ID:5C60qBo90 >>550
cyclic
cyclic
556はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 693e-wWxq)
2023/03/02(木) 00:05:39.48ID:pZfd6NSK0 そういうのはいわゆる自転車小屋の議論になりがち。
そこそこ盛り上がりはすることもあるかもしれないけどあまり意味のある結論は出ないよ。
そこそこ盛り上がりはすることもあるかもしれないけどあまり意味のある結論は出ないよ。
557デフォルトの名無しさん (ワッチョイ da79-Arif)
2023/03/02(木) 03:04:30.24ID:eGjuMjwU0 するか否か、1ビットのフラグの命名に他者を巻き込む議論が本当に必要ですかということか
すなわち名前はflagとかで変数宣言部に日本語コメントでも添えた方が建設的ということだな?違うか?
すなわち名前はflagとかで変数宣言部に日本語コメントでも添えた方が建設的ということだな?違うか?
558デフォルトの名無しさん (スップ Sdfa-5jsL)
2023/03/02(木) 07:06:54.36ID:xa7MSIOTd 変数名の付け方は案件による
無論、一般論などない
主観と思い込みで強弁するやつはいるけどね
無論、一般論などない
主観と思い込みで強弁するやつはいるけどね
559デフォルトの名無しさん (ワッチョイ 7646-BmO7)
2023/03/02(木) 09:03:08.54ID:GoAAqo+J0 C-gengo wa mada nihon-go kakenai no?
bool 先頭に戻って検索 = 真 ;
bool 先頭に戻って検索 = 真 ;
560デフォルトの名無しさん (ワッチョイ 76cf-okFi)
2023/03/02(木) 16:32:03.69ID:N0PfEOQ90 質問の仕方でどういうコード書いてるか垣間見えるのはあるな
int searchtype = FROM_TOPとかBOTTOMとかBACKWARDみたいな持ち方ならそんな質問出ないだろうし
int searchtype = FROM_TOPとかBOTTOMとかBACKWARDみたいな持ち方ならそんな質問出ないだろうし
561デフォルトの名無しさん (スップ Sdfa-eMhE)
2023/03/02(木) 17:21:24.58ID:y83mRLNqd562はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 693e-wWxq)
2023/03/03(金) 01:19:24.14ID:5ZXS0iFm0563デフォルトの名無しさん (スップ Sdda-iZis)
2023/03/03(金) 08:02:43.32ID:an7QtCXRd 1Hzぐらいの速度で計測すれば何かわかるかもしれない
564デフォルトの名無しさん (ワッチョイ 6eda-3xjR)
2023/03/03(金) 08:14:12.93ID:jW6Dg0m70 1Hzだと速度的には1秒周期なので測定の意味がない
565デフォルトの名無しさん (ワッチョイ 7663-W5vA)
2023/03/03(金) 22:40:53.27ID:1TAJ9GtV0 もしかするとCPUクロックをそこまで落としてデバッグしたいとかw
566デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/04(土) 06:01:07.88ID:2lfmGWRw0 [sp+10]はメモリアクセス1回だが
[temp]は2回だな
8086だとキャッシュないからメモリのウエイト数の影響をモロに受ける
どciscでパイプラインなんかないし
[temp]は2回だな
8086だとキャッシュないからメモリのウエイト数の影響をモロに受ける
どciscでパイプラインなんかないし
567デフォルトの名無しさん (スッププ Sd33-0t2P)
2023/03/04(土) 19:01:51.83ID:siYz8HOgd Cのコードを書くのにアセンブラまで意識するのか、、
立派な心がけあるな
精進しなされ
でも、CPUやコンバイラで違うじゃん、、、
立派な心がけあるな
精進しなされ
でも、CPUやコンバイラで違うじゃん、、、
568デフォルトの名無しさん (ワッチョイ 1302-ScW/)
2023/03/04(土) 21:31:31.02ID:mhQJa69K0 >>566
勘違いしてない?
勘違いしてない?
569デフォルトの名無しさん (ワッチョイ 1969-zdzo)
2023/03/04(土) 21:33:37.98ID:K3zEUrJN0 [sp+10]が1回なら[temp]も1回じゃね
命令のフェッチは数えないんでしょ?
プリフェッチはパイプラインみたいなもんじゃね?
命令のフェッチは数えないんでしょ?
プリフェッチはパイプラインみたいなもんじゃね?
570デフォルトの名無しさん (ワッチョイ 1361-y7Dr)
2023/03/04(土) 23:58:44.62ID:D8X7oasM0 素の8086にsp使えるアドレッシングはないのでbpで…
mov ax, [bp+disp] 命令3~4バイト 8+9クロック
mov ax, [TEMP] 命令4バイト 8+6クロック
と実効アドレスの計算時間に差があったという大昔のお話
mov ax, [bp+disp] 命令3~4バイト 8+9クロック
mov ax, [TEMP] 命令4バイト 8+6クロック
と実効アドレスの計算時間に差があったという大昔のお話
571デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/05(日) 06:15:37.72ID:nSao/Dea0 >>568
何が?
何が?
572デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/05(日) 06:58:01.26ID:94fNx05VM 8086には現在のような深いパイプラインは無いがそれでもEU(Execution Unit : 実行ユニット)とBIU(Bus Interface Unit : バスインタフェースユニット)は独立しており
メモリアクセスと内部のALUはそれぞれ別々に動作する
ある意味初歩的な2段パイプラインとも言える構造で単純なクロックサイクルの加算とはならない
メモリアクセスと内部のALUはそれぞれ別々に動作する
ある意味初歩的な2段パイプラインとも言える構造で単純なクロックサイクルの加算とはならない
573デフォルトの名無しさん (ワッチョイ 1302-ScW/)
2023/03/05(日) 07:13:34.61ID:cmZGkkdl0574デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/05(日) 08:11:12.86ID:nSao/Dea0575デフォルトの名無しさん (ワッチョイ 13ad-NCuH)
2023/03/05(日) 12:43:47.21ID:nmaj3sub0 >>567
昔昔はそういうものだったんよ。
Cは、
・プログラマの責任において何でもできる
・コンパイラはプログラマの意思に忠実であれ(余計な最適化なんかするんじゃねえ!)
ってこと。だから、
a=a+1;と、a++;は違う。
前者は加算命令、後者はインクリメント命令になってほしいというのが、プログラマの意志。
ただ、Cが色々な場で広く使われるようになって、最適化を進めるしかなくなったから、そんなのどうでもいいことになったけど。
昔昔はそういうものだったんよ。
Cは、
・プログラマの責任において何でもできる
・コンパイラはプログラマの意思に忠実であれ(余計な最適化なんかするんじゃねえ!)
ってこと。だから、
a=a+1;と、a++;は違う。
前者は加算命令、後者はインクリメント命令になってほしいというのが、プログラマの意志。
ただ、Cが色々な場で広く使われるようになって、最適化を進めるしかなくなったから、そんなのどうでもいいことになったけど。
576デフォルトの名無しさん (ワッチョイ 1969-zdzo)
2023/03/05(日) 12:47:05.12ID:s1YdjeUN0 >>574
だからさ……それを2回っていうなら、[sp+10]も2回だろ
だからさ……それを2回っていうなら、[sp+10]も2回だろ
577デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/05(日) 13:30:59.36ID:nSao/Dea0578デフォルトの名無しさん (ワッチョイ 1969-zdzo)
2023/03/05(日) 15:05:57.71ID:s1YdjeUN0579デフォルトの名無しさん (ワッチョイ 13ad-Qpn1)
2023/03/05(日) 15:07:29.13ID:YlwUczDE0 >>575
ま、しかし、昔はコンパイラの最適化がしょぼかったというのもあるな。
CPU (特に 8 bit CPU とか) がC言語等のいわゆる高級言語を全く意識して作られていないというのが最大の問題だったのかも知れないが。
ま、しかし、昔はコンパイラの最適化がしょぼかったというのもあるな。
CPU (特に 8 bit CPU とか) がC言語等のいわゆる高級言語を全く意識して作られていないというのが最大の問題だったのかも知れないが。
580デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/05(日) 15:41:40.37ID:nSao/Dea0581デフォルトの名無しさん (スッップ Sd33-c1aN)
2023/03/05(日) 16:48:35.64ID:0aHQQO/od582デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/05(日) 17:03:05.50ID:nSao/Dea0583デフォルトの名無しさん (スッップ Sd33-c1aN)
2023/03/05(日) 17:27:59.49ID:0aHQQO/od 間違い、>>581は6809の話だった…
ややこしくなってるが
MOV AX、[SP+10]
がspレジスタから10バイト後を読むなら
MOV AX、[TEMP]
はアドレスTEMPを読む意味だろ
8086ニーモニックをよく知らないが
ややこしくなってるが
MOV AX、[SP+10]
がspレジスタから10バイト後を読むなら
MOV AX、[TEMP]
はアドレスTEMPを読む意味だろ
8086ニーモニックをよく知らないが
584デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/05(日) 17:44:11.51ID:nSao/Dea0 >>583
6809にしたってFDBディレクティブで置いた定数はディスプレースメントじゃないし
6809にしたってFDBディレクティブで置いた定数はディスプレースメントじゃないし
585デフォルトの名無しさん (ワッチョイ e9b3-ftr4)
2023/03/05(日) 18:29:27.81ID:On/jxRV/0 #include <stdio.h>
#include <math.h>
void main(void){
double a, b, c;
double x1;
a = 4;
b = -3;
c = 1;
x1 = (-b + sqrt(pow(b,2) - 4*a*c)) / (2 * a);
printf("%f\n", x1);
}
printfが-nanて表示します。これはどういう意味でしょうか?
#include <math.h>
void main(void){
double a, b, c;
double x1;
a = 4;
b = -3;
c = 1;
x1 = (-b + sqrt(pow(b,2) - 4*a*c)) / (2 * a);
printf("%f\n", x1);
}
printfが-nanて表示します。これはどういう意味でしょうか?
586デフォルトの名無しさん (スッププ Sd33-0t2P)
2023/03/05(日) 18:43:57.85ID:KnQWIUK4d587デフォルトの名無しさん (ワッチョイ 8b63-Qpn1)
2023/03/05(日) 18:53:30.15ID:M62PQQGq0588デフォルトの名無しさん (ワッチョイ e9b3-ftr4)
2023/03/05(日) 19:03:21.29ID:On/jxRV/0 あー、なんかわかってきました
そういうことか
サンクス
そういうことか
サンクス
589はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 013e-zdzo)
2023/03/05(日) 19:07:20.35ID:AE3nXsIn0 >>585
sqrt に負数を渡した場合には定義域エラーとなり、定義域エラーのときは処理系定義の値を返す。
その処理系では処理系定義の値というのが nan だということになる。
言語仕様では詳細は規定されていないけれど
一般に浮動小数点の表現として使われる IEEE 754 などでは非数 (not a number) を表現のひとつとして持ち、
意味のある計算結果にならなかったときは非数がセットされる。
not a number の略で NaN 。
処理系によっては定義域エラーをハンドリングする方法を用意してあることもあるけど、
発生させないように事前にチェックしたほうが基本的には簡単だと思う。
sqrt に負数を渡した場合には定義域エラーとなり、定義域エラーのときは処理系定義の値を返す。
その処理系では処理系定義の値というのが nan だということになる。
言語仕様では詳細は規定されていないけれど
一般に浮動小数点の表現として使われる IEEE 754 などでは非数 (not a number) を表現のひとつとして持ち、
意味のある計算結果にならなかったときは非数がセットされる。
not a number の略で NaN 。
処理系によっては定義域エラーをハンドリングする方法を用意してあることもあるけど、
発生させないように事前にチェックしたほうが基本的には簡単だと思う。
590デフォルトの名無しさん (スッップ Sd33-c1aN)
2023/03/05(日) 19:21:09.18ID:0aHQQO/od よくわからないんだが
>>574が勘違いだな
TEMP: dw 0000h
はデータ0000hをメモリに置いてそのアドレスをTEMPと定義するという命令(アセンブラ疑似命令)
MOV AX,TEMP
はAXレジスタにそのアドレス値を入れる
MOV AX,[TEMP]
はAXレジスタにそのアドレスの内容(0000H)を入れる
さらに[0000H]の内容を読むにはもう1命令必要になる…はず
6809なら1命令で読めるがあまり使われなかったと思うどっちにしろ遅くなるので
>>574が勘違いだな
TEMP: dw 0000h
はデータ0000hをメモリに置いてそのアドレスをTEMPと定義するという命令(アセンブラ疑似命令)
MOV AX,TEMP
はAXレジスタにそのアドレス値を入れる
MOV AX,[TEMP]
はAXレジスタにそのアドレスの内容(0000H)を入れる
さらに[0000H]の内容を読むにはもう1命令必要になる…はず
6809なら1命令で読めるがあまり使われなかったと思うどっちにしろ遅くなるので
591デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/05(日) 19:26:59.51ID:eomhsMcE0 6809の用語でいうとメモリ間接参照アドレッシングだな
592デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/05(日) 19:30:46.77ID:eomhsMcE0 ちなみに1命令で読むのはダイレクトページ参照アドレッシングな
6809ではあまり使われなかったけど、6502などではこれが使えないと実質何も出来ない
6809ではあまり使われなかったけど、6502などではこれが使えないと実質何も出来ない
593デフォルトの名無しさん (テテンテンテン MMeb-8VhG)
2023/03/05(日) 23:40:03.63ID:yUIw0mIIM >>585
nanは、何処かでnanになると、その後の演算全てがnanになる
なのでsqrtのnanが伝搬してprintfがnanを表示した
ゲーム(特に3D)は、油断するとnanを伝搬させてしまう事があって、キャラがグチャグチャに壊れて表示されるのは、それが原因
nanを伝搬させるとデバッグが大変なので、nanを出さないように細心の注意が必要だ
sqrtとか特に割り算(/)に気を付けないといけない
nanは、何処かでnanになると、その後の演算全てがnanになる
なのでsqrtのnanが伝搬してprintfがnanを表示した
ゲーム(特に3D)は、油断するとnanを伝搬させてしまう事があって、キャラがグチャグチャに壊れて表示されるのは、それが原因
nanを伝搬させるとデバッグが大変なので、nanを出さないように細心の注意が必要だ
sqrtとか特に割り算(/)に気を付けないといけない
594デフォルトの名無しさん (スフッ Sd33-RL4O)
2023/03/06(月) 02:42:50.81ID:Ht1FmqqLd >>593
え、割り算でNaN出る?と一瞬思ったけど、0.0/0.0かな?多分
珍しいケースに思える
非ゼロ/0.0でinfが出るのは関数の根を簡易に求めるのに重宝するけど(逆数が極)、NaNが出る可能性にまでは気を配って無かったのでナイス指摘
え、割り算でNaN出る?と一瞬思ったけど、0.0/0.0かな?多分
珍しいケースに思える
非ゼロ/0.0でinfが出るのは関数の根を簡易に求めるのに重宝するけど(逆数が極)、NaNが出る可能性にまでは気を配って無かったのでナイス指摘
595デフォルトの名無しさん (スフッ Sd33-RL4O)
2023/03/06(月) 02:51:49.35ID:Ht1FmqqLd >>589
IEEEはほぼCの為に制定されたようなものでは?
fpuなんて改造してナンボな本場のnumber cruncher達(ほぼFORTRAN/Fortran)は最近までIEEEなんて最近までガン無視だったわけで
今は標準モジュールにIEEEサポート入って普及してるけど
IEEEはほぼCの為に制定されたようなものでは?
fpuなんて改造してナンボな本場のnumber cruncher達(ほぼFORTRAN/Fortran)は最近までIEEEなんて最近までガン無視だったわけで
今は標準モジュールにIEEEサポート入って普及してるけど
596デフォルトの名無しさん (テテンテンテン MMeb-8VhG)
2023/03/06(月) 02:52:25.09ID:Ludh8Y7rM >>594
3Dだとベクトルのノーマライズをしょっちゅうするけど、これはベクトルの長さで割るけど、事前に長さのチェックが漏れてると、ゼロで割ることになる
そういう特殊な状況は確かに稀なんで、リリースに残ってしまうことがある
3Dだとベクトルのノーマライズをしょっちゅうするけど、これはベクトルの長さで割るけど、事前に長さのチェックが漏れてると、ゼロで割ることになる
そういう特殊な状況は確かに稀なんで、リリースに残ってしまうことがある
597デフォルトの名無しさん (テテンテンテン MMeb-8VhG)
2023/03/06(月) 03:02:31.96ID:Ludh8Y7rM >>594
良く考えたら、rsqrtがnanを返してる気がする…
良く考えたら、rsqrtがnanを返してる気がする…
598デフォルトの名無しさん (ワッチョイ 9102-RL4O)
2023/03/06(月) 03:14:56.83ID:VyhKtCOB0 >>596
俺環ではDBL_MIN/0.0でもちゃんとinf吐くから、ノーマライズされるべきベクトル(分母)が正確に0.0というのはdoubleでは考えにくいような…
3Dだとsingle以下のfloat16/8とか使うと聞くから、極端に精度が低過いと起きるのかしら?
俺環ではDBL_MIN/0.0でもちゃんとinf吐くから、ノーマライズされるべきベクトル(分母)が正確に0.0というのはdoubleでは考えにくいような…
3Dだとsingle以下のfloat16/8とか使うと聞くから、極端に精度が低過いと起きるのかしら?
599デフォルトの名無しさん (ワッチョイ 9102-RL4O)
2023/03/06(月) 07:22:56.30ID:VyhKtCOB0 分子、でした
>>597
かもね
あと0.0/0.0以外の四則でもnanが出るケースは他にも思い付く(今思い付いた)
inf/infとか
まあ実数関数求根/方程式を解く目的なら(精度上での)解に達した証がinfだから、発生した時点で必ずbreakするし、事実上到達し得ない計算だけど
定義域がパッチワークみたいな複素関数で一々入力のチェックなんてやってられないし、nanには静かに伝播してもらわないと困るけど
とにかく欠損値の無い有限の実数値だけが欲しいだけ(例えばグラフィック)なら、fenv.h/signal.hで例外をヲチしてSIGFPE投げるとか、あるならsnanモードにするとか
>>597
かもね
あと0.0/0.0以外の四則でもnanが出るケースは他にも思い付く(今思い付いた)
inf/infとか
まあ実数関数求根/方程式を解く目的なら(精度上での)解に達した証がinfだから、発生した時点で必ずbreakするし、事実上到達し得ない計算だけど
定義域がパッチワークみたいな複素関数で一々入力のチェックなんてやってられないし、nanには静かに伝播してもらわないと困るけど
とにかく欠損値の無い有限の実数値だけが欲しいだけ(例えばグラフィック)なら、fenv.h/signal.hで例外をヲチしてSIGFPE投げるとか、あるならsnanモードにするとか
600デフォルトの名無しさん (ワッチョイ 8bcf-W5Lg)
2023/03/06(月) 14:19:01.34ID:+b36jU+h0601デフォルトの名無しさん (ワッチョイ 295f-3zFX)
2023/03/06(月) 22:43:56.50ID:K6iDrUwm0 このような状態を「思考障害」と呼び、Cプログラマの2割ほどが患っていると言われています
602デフォルトの名無しさん (ワッチョイ e910-Qpn1)
2023/03/07(火) 07:51:33.34ID:hIILJ8zA0 次の議題は『gotoは活用すべきか全面廃止するべきか』でうわぁなにをするやめ・・・
603デフォルトの名無しさん (ワッチョイ 9397-WI/b)
2023/03/07(火) 13:35:22.89ID:914niPGe0 行き先はhellで
604デフォルトの名無しさん (スッププ Sd33-0t2P)
2023/03/07(火) 19:20:42.99ID:L3ZoYgrgd いいか?C言語について俺に聞け
VAX11でcのコンバイラをcで作ろうとしたのはワシだ
当時のyacc lexに謎の挙動があって嫌気がさして失敗したが、、?
VAX11でcのコンバイラをcで作ろうとしたのはワシだ
当時のyacc lexに謎の挙動があって嫌気がさして失敗したが、、?
605デフォルトの名無しさん (ワッチョイ 8b63-Qpn1)
2023/03/07(火) 19:38:38.87ID:2Q8k5rzL0 創造主を作ったのは、オレだ、みたいな
606デフォルトの名無しさん (ワッチョイ 13ad-Qpn1)
2023/03/07(火) 22:59:35.82ID:s3GtgFEy0 インド料理屋で、NANを頼みました。
607デフォルトの名無しさん (ワッチョイ 13ad-Qpn1)
2023/03/07(火) 23:06:20.52ID:s3GtgFEy0 >>605
そういえばID論ってのがあって、何か高度な存在が人間や宇宙を作ったってやつだが(昔ながらの神が作ったというのと似ているが神ではない)、
それならばその高度な存在はどのようにして作られたのか?それはまた別の高度な存在によって作られたのか?
とするとその存在も別のもっと高度な何かに作られたのか?という具合に無間ループになってしまう。
そういえばID論ってのがあって、何か高度な存在が人間や宇宙を作ったってやつだが(昔ながらの神が作ったというのと似ているが神ではない)、
それならばその高度な存在はどのようにして作られたのか?それはまた別の高度な存在によって作られたのか?
とするとその存在も別のもっと高度な何かに作られたのか?という具合に無間ループになってしまう。
608デフォルトの名無しさん (ワッチョイ 4110-W5Lg)
2023/03/07(火) 23:18:55.74ID:aKlG86O40 ID論てのは地球のたった数億年で生命が生まれたのが信じがたいってだけで、
元の生命はどこかでもっと時間をかけて生まれたんじゃないかという話。
元の生命はどこかでもっと時間をかけて生まれたんじゃないかという話。
609デフォルトの名無しさん (ワッチョイ 7102-waqZ)
2023/03/08(水) 00:40:31.06ID:diq3Y+zm0 興味深いお話ですがスレ違いです
610デフォルトの名無しさん (スップ Sd73-20ys)
2023/03/08(水) 08:33:16.96ID:qdKF3wc3d Cインタプリタなら昔作った
当時こういうの流行ってたし
いくつか書籍化もされてる
当時こういうの流行ってたし
いくつか書籍化もされてる
611デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/08(水) 08:47:42.99ID:D4+z1pfo0 どうせならB作ればよかったのに
612デフォルトの名無しさん (スッップ Sd33-c1aN)
2023/03/08(水) 09:22:43.28ID:fOZ1V1tZd613デフォルトの名無しさん (スップ Sd73-YAma)
2023/03/08(水) 12:12:57.95ID:wYi2NpnKd 鉄則
1 困った時のGOTO勝利
2 CALL関数はマクロ展開のヘッダファイル
3 SQL呼び出しはstructの前に敗北
4 while こそループの王 forは邪教
5 そこでbreakするな
6 switch文が見えたらバグの腐海
1 困った時のGOTO勝利
2 CALL関数はマクロ展開のヘッダファイル
3 SQL呼び出しはstructの前に敗北
4 while こそループの王 forは邪教
5 そこでbreakするな
6 switch文が見えたらバグの腐海
614デフォルトの名無しさん (スップ Sd73-20ys)
2023/03/08(水) 12:52:17.24ID:qdKF3wc3d でもswitchの巨大状態ループ便利なんよね
バグの温床かもしれんけどメンテは凄く楽
バグの温床かもしれんけどメンテは凄く楽
615デフォルトの名無しさん (ワッチョイ 8b69-nyng)
2023/03/09(木) 09:47:34.15ID:rNyfncCj0 あれやって 条件成立まって あれやって を 状態遷移しながらぶん回すときは
状態変数を int にして 巨大switch にしたくなる
けど こことここの間に新たな状態差し込みたいってときに 状態変数値どうしよう? っておよよする
状態変数を int にして 巨大switch にしたくなる
けど こことここの間に新たな状態差し込みたいってときに 状態変数値どうしよう? っておよよする
616デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 09:53:04.07ID:rH46BtzXM 状態変数は列挙型にしておけば状態の追加や修正に合わせて具体的な値は勝手に変わる
617デフォルトの名無しさん (ワッチョイ 8b69-nyng)
2023/03/09(木) 10:05:04.42ID:rNyfncCj0618デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/09(木) 10:37:21.41ID:zXViYC6t0 FSMだね
古典的なハード設計では常套手段
古典的なハード設計では常套手段
619デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 10:42:55.43ID:m8Mymp8XM 状態マシンの欠点は割込みや並列処理の扱いが非常に厄介なところ
複数箇所から状態変数を更新される可能性を考慮すると泥沼に嵌る
複数箇所から状態変数を更新される可能性を考慮すると泥沼に嵌る
620デフォルトの名無しさん (ワッチョイ 8b63-Qpn1)
2023/03/09(木) 10:48:34.22ID:kE5o8bWH0 更新処理は一カ所にして、順番待ちにするのが吉
621デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 10:54:14.30ID:WaHsZI+cM 通常処理のメインループと外部割込みの割込みハンドラ(特に緊急割込み処理)を同じキューで順番に更新すると処理が破綻しないか?
622デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/09(木) 11:08:05.83ID:zXViYC6t0 ノンプリエンプティブなマルチは今でも普通にやる
問題なきゃそれが楽だから
問題なきゃそれが楽だから
623デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/09(木) 11:12:46.89ID:sK4pplDk0 組込みではプリエンプティブが一般的
応答性最優先でCPUの実行権を強制的に奪わないと最悪の場合は事故に繋がる
応答性最優先でCPUの実行権を強制的に奪わないと最悪の場合は事故に繋がる
624デフォルトの名無しさん (スップ Sd33-bvRC)
2023/03/09(木) 13:56:50.62ID:1gP/2BE4d 問題なきゃって言ってるのに最悪の場合って・・・
625デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 14:41:35.25ID:yDS62QUEM 組込みシステムのタスクスケジューラーでノンプリエンプティブマルチタスクって地雷源もいいところだろ
自殺願望でもあるのか
自殺願望でもあるのか
626デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 16:23:16.50ID:pN9rkknD0 組み込みと一言で括られてプリエンティブで良い悪いの議論をされるの抵抗ある人がここにいるけど俺以外でもかなり多いんじゃないかな
プリエンティブはタスクスイッチ自体が割り込み禁止を伴うクリティカル処理だからそれが組み込みに適しているとはいい難い
タスクスイッチのレジスタ退避復帰で何十サイクルも消費して待ってる割り込みが処理できずにいるのが許容できかは案件により過ぎる
片やノンプリでは少なくとも割り込みを汚さない
従って俺はどんな案件でも通用するノンプリでまず検討する事を推奨したい。プリエンでもタイミング的に問題ないねとなったら移行すればいい
いきなりプリエンありきで作る方が自殺行為に見える
プリエンティブはタスクスイッチ自体が割り込み禁止を伴うクリティカル処理だからそれが組み込みに適しているとはいい難い
タスクスイッチのレジスタ退避復帰で何十サイクルも消費して待ってる割り込みが処理できずにいるのが許容できかは案件により過ぎる
片やノンプリでは少なくとも割り込みを汚さない
従って俺はどんな案件でも通用するノンプリでまず検討する事を推奨したい。プリエンでもタイミング的に問題ないねとなったら移行すればいい
いきなりプリエンありきで作る方が自殺行為に見える
627デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 16:36:55.55ID:StryrQ2LM タイミング的に問題ないという判断の前提が一定時間以内に必ず応答出来るという保証が必要
応答時間が保証されないノンプリエンプティブ環境でシステム設計とか殆ど不可能にしか思えない
応答時間が保証されないノンプリエンプティブ環境でシステム設計とか殆ど不可能にしか思えない
628デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 16:39:33.97ID:pN9rkknD0 割り込みにも大別してすぐに応答が必要なもの、メインのキューに回してもよい優先度低のものの2種類存在する
プリエンティブを採用できるかどうかは前者の応答にどれだけの遅延が許容されるかという事になる
割り込みハンドラを普通にCで書くとハンドラ内で使用するレジスタの退避コードが適当に生成されるが、
許容時間によってはインラインアセンブラで最小限のレジスタで書かざるを得ない場合がある
そういう案件だとプリエンティブの採用はありえない
プリエンティブを採用できるかどうかは前者の応答にどれだけの遅延が許容されるかという事になる
割り込みハンドラを普通にCで書くとハンドラ内で使用するレジスタの退避コードが適当に生成されるが、
許容時間によってはインラインアセンブラで最小限のレジスタで書かざるを得ない場合がある
そういう案件だとプリエンティブの採用はありえない
629デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 16:41:41.13ID:pN9rkknD0 あーこれってノンプリエンプティブを何か誤解してる奴が話に参加してるってだけか
理解したわぁ
理解したわぁ
630デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 16:45:38.25ID:pN9rkknD0 623 625 627 これ同じ人か
もうちょっと勉強してから参加しようね
もうちょっと勉強してから参加しようね
631デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 16:48:44.72ID:hgw38TJYM いやその通りだよ
保証出来るようにアセンブラすら併用せざるを得ないのが泥沼の組込み開発
それでも駄目ならソフトウェアでなく専用ハードで物理的に処置する方向を検討する
保証出来るようにアセンブラすら併用せざるを得ないのが泥沼の組込み開発
それでも駄目ならソフトウェアでなく専用ハードで物理的に処置する方向を検討する
632デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 16:57:03.69ID:EoI0IUhJM ちなみにとある産業用モータドライバー基板開発のお話し
633デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 17:02:44.72ID:pN9rkknD0 >>631
タイミング調整にアセンブラ併記は組み込み案件でなくても普通に行われてるでしょ
それと専用ハードって簡単に言うけど、大抵の組み込み案件ってハードの部品点数減らしていく傾向だから非現実的な提案にしか見えないよ
簡単に用意できるなら苦労しないし廃業だわ
タイミング調整にアセンブラ併記は組み込み案件でなくても普通に行われてるでしょ
それと専用ハードって簡単に言うけど、大抵の組み込み案件ってハードの部品点数減らしていく傾向だから非現実的な提案にしか見えないよ
簡単に用意できるなら苦労しないし廃業だわ
634デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 17:08:56.67ID:pN9rkknD0 そもそも俺が今相手してる奴って全員ID変えてどちら様だよ
議論もまともにできず論点ずらしにも失敗してお前ほんと今みじめだぞ
議論もまともにできず論点ずらしにも失敗してお前ほんと今みじめだぞ
635デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 17:11:58.61ID:pN9rkknD0 よくみたらこれワッチョイスレじゃん全部ばれてて草
636デフォルトの名無しさん
2023/03/09(木) 17:14:52.84ID:AnxNC5rK0 623はともかく 625と627はワッチョイ同じじゃん
637デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 17:20:18.66ID:iNLkXR0fM 要はトータルコストの問題
この件は高価な材料(主にレアアース)を多量に使用したモーターを安価な代替品に置き換えて
同等の能力を発揮させるために高度な電子制御(いわゆるベクトル電流制御)で駆動するのが狙いだった
実際メインのマイコン処理だけでは追い付かずセンサ周りの処理は別チップのDSPを採用してる
結果的に制御系のコストは増加したが全体としては前システムの約7割程度の費用に抑えられた
長文失礼
この件は高価な材料(主にレアアース)を多量に使用したモーターを安価な代替品に置き換えて
同等の能力を発揮させるために高度な電子制御(いわゆるベクトル電流制御)で駆動するのが狙いだった
実際メインのマイコン処理だけでは追い付かずセンサ周りの処理は別チップのDSPを採用してる
結果的に制御系のコストは増加したが全体としては前システムの約7割程度の費用に抑えられた
長文失礼
638デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 17:22:17.10ID:pN9rkknD0 >>623も言ってることおかしいけど別回線か何かだろ
そもそも組み込みはその最悪ケースを見積もりながら設計していくって前提知識がないし
そもそも組み込みはその最悪ケースを見積もりながら設計していくって前提知識がないし
639デフォルトの名無しさん (ワッチョイ 8b63-Qpn1)
2023/03/09(木) 17:22:30.90ID:kE5o8bWH0 自動運転車での危険回避行動のロジックとか、聞けるのかと楽しみにしてたのに
640デフォルトの名無しさん (ワッチョイ 9168-zdzo)
2023/03/09(木) 17:34:00.29ID:mZ/OHyfS0641デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/09(木) 17:41:37.81ID:zXViYC6t0 ハード絡みの話が出るのは仕方ないだろ
COBOLじゃないんだから
COBOLじゃないんだから
642デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 17:50:21.11ID:pN9rkknD0 >>637
これを1行で要約するとヤバいなあ…設計見積もりガバガバで採用したマイコンで処理できなくてハード追加調達して結果的に動いたわろたってことだろ
最近のH3失敗もだけど予算まともでもこういう経験値の奴らで作られる可能性を考えると寒いなあ
暖ったけえ話を知りたい
これを1行で要約するとヤバいなあ…設計見積もりガバガバで採用したマイコンで処理できなくてハード追加調達して結果的に動いたわろたってことだろ
最近のH3失敗もだけど予算まともでもこういう経験値の奴らで作られる可能性を考えると寒いなあ
暖ったけえ話を知りたい
643デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/09(木) 17:54:10.14ID:zXViYC6t0 若いのに頭固いっていうのかな
他人の言うことを聞く耳持たず自分の思い込みを自画自賛してるよな
他人の言うことを聞く耳持たず自分の思い込みを自画自賛してるよな
644デフォルトの名無しさん (ワントンキン MMd3-WI/b)
2023/03/09(木) 18:26:27.17ID:Dl2bLbopM このスレの年齢層はとても高い
645デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/09(木) 18:29:05.52ID:sK4pplDk0 精神年齢は?
646デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/09(木) 18:33:49.17ID:sK4pplDk0 疑心暗鬼で個人攻撃
プログラムではなくてワッチョイを語る
世も末だな
プログラムではなくてワッチョイを語る
世も末だな
647デフォルトの名無しさん (ワッチョイ 1379-rvSK)
2023/03/09(木) 20:35:29.98ID:pN9rkknD0648デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/09(木) 20:49:30.54ID:sK4pplDk0 組込みマイコンでは常識的なレジスタバンク切替やコンテキストスイッチングのことに触れずに
レジスタ退避や復帰でサイクル消費するとか言ってる時点で組込み開発の経験が無いんだろうな
ということは分かる
余程の簡易的なものを除けばメインと割込みでいちいちスタック経由でレジスタ退避するような
間抜けなマイコンは無いだろ
それはx86のような汎用CPUの構造だ
レジスタ退避や復帰でサイクル消費するとか言ってる時点で組込み開発の経験が無いんだろうな
ということは分かる
余程の簡易的なものを除けばメインと割込みでいちいちスタック経由でレジスタ退避するような
間抜けなマイコンは無いだろ
それはx86のような汎用CPUの構造だ
649デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/09(木) 21:04:47.03ID:VZ2yRc9EM 似たような意見が出てきたので補足するとバンク切替なら大体2,3クロックでレジスタセット丸ごと切り替わるから割込みのオーバーヘッド自体は大した負荷にはならない
反面x86の様な大規模なレジスタ群は持てないのでそもそもの用途と構造が違う
反面x86の様な大規模なレジスタ群は持てないのでそもそもの用途と構造が違う
650デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/10(金) 06:51:36.78ID:wZRM+8gY0 ドヤってるけど大したこと言ってないな
651デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/10(金) 07:19:22.02ID:gnQOQJYP0 そう言うなら後出しではなくて自分から大したこと語ってくれ
652デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/10(金) 07:50:43.93ID:wZRM+8gY0 マルチで何タスクを並行で動かすのかによるだろ裏レジスタだけで済むかどうかは
653デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/10(金) 07:56:30.74ID:wZRM+8gY0 無結合マルチCPUで楽々解決なんてこともあったな
654デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/10(金) 07:57:42.45ID:gnQOQJYP0 知ってる範囲では8レジスタ×4バンクというのがあった
日本製(現在は事業撤退済)
日本製(現在は事業撤退済)
655デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/10(金) 08:08:15.26ID:gnQOQJYP0 そもそもマルチタスクのタイマ割込みの他に外部ポートからの多重割込みは
優先順位とレジスタ割当てをかなり慎重に検討するべき事項
並列処理の仕様はソフト設計の基本
優先順位とレジスタ割当てをかなり慎重に検討するべき事項
並列処理の仕様はソフト設計の基本
656デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/10(金) 08:24:52.79ID:wZRM+8gY0 並列じゃないソフト設計も普通にあるんだが
657デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/10(金) 08:34:55.28ID:gnQOQJYP0 まあ外部割込みを一切禁止して常にポーリングでポート監視するシステムも無いことは無いが
ごく単純なパターンに限られるけどな
普通は外部からの入出力のトリガは割込みで受け付ける
ごく単純なパターンに限られるけどな
普通は外部からの入出力のトリガは割込みで受け付ける
658デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/10(金) 08:41:29.45ID:wZRM+8gY0 そもそもタイミングがシビアなところはハードでできるのはそうするし
かなり特殊なケースにもFPGAの対応力はありがたい
かなり特殊なケースにもFPGAの対応力はありがたい
659デフォルトの名無しさん (ワッチョイ fbda-VwsU)
2023/03/10(金) 08:47:32.61ID:gnQOQJYP0 そこまで行くとソフト設計者の範疇の外
660デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/10(金) 08:50:32.68ID:wZRM+8gY0 ハードソフト協調設計をする中でソフトでどこまでやるかってこと
661デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/10(金) 08:59:18.03ID:OFFvcl9SM 士農工商メカエレソフト
ソフト屋底辺の悲しさ
ハードソフト分担は大体は製品企画段階で決まる
メカ屋やエレキ(ハード屋)の尻拭いがソフト屋の仕事
ソフト屋底辺の悲しさ
ハードソフト分担は大体は製品企画段階で決まる
メカ屋やエレキ(ハード屋)の尻拭いがソフト屋の仕事
662デフォルトの名無しさん (ラクッペペ MMeb-UQad)
2023/03/10(金) 09:06:33.88ID:+DlQ4xGFM DSPあたりまではソフトでカバー出来るけどFPGAにまでなるとハードの仕事
663デフォルトの名無しさん (ワッチョイ d163-PMd1)
2023/03/10(金) 09:17:19.56ID:wZRM+8gY0 CでROM焼きしてんのと
VerilogでFPGAやってんのは
遠くから見ても見分けがつかない
VerilogでFPGAやってんのは
遠くから見ても見分けがつかない
664デフォルトの名無しさん (アウアウエー Sae3-MJlW)
2023/03/10(金) 16:29:37.22ID:9R6reiLca665デフォルトの名無しさん (アウアウエー Sae3-MJlW)
2023/03/10(金) 16:33:31.81ID:9R6reiLca ちなみに映画中に出て来たCのソースコードは
逆コンパイルしたようなコードで
変数名がめちゃくちゃだった
逆コンパイルしたようなコードで
変数名がめちゃくちゃだった
666デフォルトの名無しさん (アウアウエー Sae3-MJlW)
2023/03/10(金) 16:35:25.12ID:9R6reiLca local_001 とか
local_666 みたいな
ずらずら並んでた
local_666 みたいな
ずらずら並んでた
667デフォルトの名無しさん (ワッチョイ eba4-0t2P)
2023/03/10(金) 20:16:30.19ID:EGVo42nQ0 私を崇めよ
関数ポインタ配列が楽になる
関数ポインタ配列が楽になる
>>608
パン=スペルミア仮説ともいいますね
パン=スペルミア仮説ともいいますね
669デフォルトの名無しさん (スッップ Sd9a-9LRx)
2023/03/11(土) 10:14:57.49ID:AyWAtMH4d670はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f93e-S+nL)
2023/03/11(土) 10:33:06.84ID:VCVl4BMy0 実際に逆コンパイルされたものじゃないのか?
うろおぼえだが Winny の改造版 (?) を作ってた Lark 氏が逆コンパイルしたソースコードを放流していたような記憶がある。
うろおぼえだが Winny の改造版 (?) を作ってた Lark 氏が逆コンパイルしたソースコードを放流していたような記憶がある。
671デフォルトの名無しさん (スププ Sd9a-cOGZ)
2023/03/11(土) 15:00:32.33ID:R1SsWCE7d scanf関数もクセが強い
672デフォルトの名無しさん (ワッチョイ 7aad-JIpj)
2023/03/11(土) 18:34:55.65ID:Hy+SW7JA0 scanf の読み方は?
673デフォルトの名無しさん (ワッチョイ 7102-4J11)
2023/03/11(土) 18:46:17.31ID:anM6KfKL0 すきゃんふ
674デフォルトの名無しさん (ワッチョイ 4db3-OwdC)
2023/03/11(土) 19:06:51.49ID:HIr/E9uU0 すきゃんえふ
675デフォルトの名無しさん (ワッチョイ 0e9a-wiuY)
2023/03/11(土) 19:36:37.96ID:4mLQMbcb0 当時、京都府警がソースコードを押収したとか言ってなかったっけ
だとすると今でもあるのかな
だとすると今でもあるのかな
676デフォルトの名無しさん (ワッチョイ d6cf-mIEw)
2023/03/11(土) 20:41:12.44ID:0fOr9zyF0 そんな古いもんあんのかね
そもそも自分らの不手際で逮捕しなきゃいけない羽目になったんだから要らなくなったら即ポイ捨てだと思うけどね
そもそも自分らの不手際で逮捕しなきゃいけない羽目になったんだから要らなくなったら即ポイ捨てだと思うけどね
677デフォルトの名無しさん (ワッチョイ 55da-biHL)
2023/03/12(日) 07:29:50.79ID:WhaHkT9k0 すきゃんてぃ
678デフォルトの名無しさん (アウアウエー Sa22-MAiJ)
2023/03/12(日) 12:04:15.69ID:8DcR0+gea >>670
47氏本人が家宅捜査される場面で
編集中のソースコードって設定だから
本人がわざわざ逆コンパイルして使ってるのは可笑しい
仮に変数名自分で付けてたとしてもあんな名前でコード描いてたとは思えない
47氏本人が家宅捜査される場面で
編集中のソースコードって設定だから
本人がわざわざ逆コンパイルして使ってるのは可笑しい
仮に変数名自分で付けてたとしてもあんな名前でコード描いてたとは思えない
679デフォルトの名無しさん (アウアウエー Sa22-MAiJ)
2023/03/12(日) 12:07:04.69ID:8DcR0+gea680デフォルトの名無しさん (アウアウエー Sa22-MAiJ)
2023/03/12(日) 12:08:27.97ID:8DcR0+gea あと別の人だけどswaponは「すわぽん」っていうのも
聴いてぎりぎり判るラインだったわ
聴いてぎりぎり判るラインだったわ
681デフォルトの名無しさん (アウアウエー Sa22-MAiJ)
2023/03/12(日) 12:10:31.51ID:8DcR0+gea682デフォルトの名無しさん (ワッチョイ 1910-mIEw)
2023/03/12(日) 12:11:07.17ID:zZ3L0xxp0 >>678
他のどんなコードを持ってきたとしても「あんなコードのはずがない」という突っ込みは受けそう。
他のどんなコードを持ってきたとしても「あんなコードのはずがない」という突っ込みは受けそう。
683デフォルトの名無しさん (スップ Sd9a-67MV)
2023/03/12(日) 12:23:09.80ID:/+cwNiL3d 京都府警りょうのキンタマ
684はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f93e-S+nL)
2023/03/12(日) 14:34:58.81ID:zw46Mo410 使われているソースコードはおそらくこれということらしい。
https://github.com/loadletter/Winny-p2p
>>678
ちゃんと考証するならそりゃそうだが
重要でないところに小ネタを仕込むのもよくあることでしょ。
https://github.com/loadletter/Winny-p2p
>>678
ちゃんと考証するならそりゃそうだが
重要でないところに小ネタを仕込むのもよくあることでしょ。
685デフォルトの名無しさん (スププ Sd9a-ISeG)
2023/03/12(日) 14:38:15.75ID:36zMid+Td686デフォルトの名無しさん (アウアウエー Sa22-MAiJ)
2023/03/13(月) 11:21:17.63ID:bF2IN6wDa >あんなコードのはずがない
47氏死んでからの映画化ならではだな
47氏死んでからの映画化ならではだな
687デフォルトの名無しさん (スップ Sd9a-9LRx)
2023/03/13(月) 15:53:24.36ID:gUMqyWwJd ジョブスの映画はもっと酷かったぞ
ウォズがこれがアップルIだ!っつってジョブズに見せると画面にアスキーコード順に文字が出てくるだけ
ジョブズがオオスゲーって顔するんだけどw
もっともそこですでにBASICやゲームの画面が出てくるのもおかしいんだけどな
ウォズがこれがアップルIだ!っつってジョブズに見せると画面にアスキーコード順に文字が出てくるだけ
ジョブズがオオスゲーって顔するんだけどw
もっともそこですでにBASICやゲームの画面が出てくるのもおかしいんだけどな
688デフォルトの名無しさん (ワッチョイ a163-DvKe)
2023/03/13(月) 20:33:15.11ID:ZWncv4YS0 CALL -151
689デフォルトの名無しさん (ワッチョイ 1910-mIEw)
2023/03/13(月) 21:56:22.40ID:sKLW0uN10 >>687
脇役で出てくるPCの時代考証がおかしかったりしたあれか
脇役で出てくるPCの時代考証がおかしかったりしたあれか
690デフォルトの名無しさん (ワッチョイ 7aad-JIpj)
2023/03/14(火) 01:18:17.67ID:eWxvxvkk0 >>687
その映画見てないので分からないが、もしや Apple ][ ではなく Apple I のこと?
だったらワンボードマイコンなのでテレビ画面に文字が出るだけでも当時は凄い事だったと思うが。
Apple I が作られたのは1976年だしな。
その映画見てないので分からないが、もしや Apple ][ ではなく Apple I のこと?
だったらワンボードマイコンなのでテレビ画面に文字が出るだけでも当時は凄い事だったと思うが。
Apple I が作られたのは1976年だしな。
691デフォルトの名無しさん (ワッチョイ d6cf-mIEw)
2023/03/14(火) 03:06:45.91ID:TJZO9aGD0 もしやもクソも誰もApple2の話なんかしてないと思うがキミはいつもそんな調子なのかね
692デフォルトの名無しさん (スププ Sd9a-cOGZ)
2023/03/14(火) 09:46:34.46ID:tHJOYlO8d ごく初歩的な質問です 変換して指定子を何にすればよいか教えてください
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
int id;
char ss[80];
strcpy(ss,"123");
id = atoi(ss);
printf("%d\n", ss);
return 0;
}
を実行するとでデタラメな数字が出力されます。
変換して指定子をなににすればよいのでしょうか?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
int id;
char ss[80];
strcpy(ss,"123");
id = atoi(ss);
printf("%d\n", ss);
return 0;
}
を実行するとでデタラメな数字が出力されます。
変換して指定子をなににすればよいのでしょうか?
693デフォルトの名無しさん (スププ Sd9a-cOGZ)
2023/03/14(火) 09:57:04.49ID:tHJOYlO8d 692です 解けました 寝ぼけていたみたいです
694デフォルトの名無しさん (ワッチョイ 6d5f-zj+m)
2023/03/14(火) 10:05:55.26ID:3kN/fw0O0 %dとか%sとかの呼び方って、変換指定子、書式指定子、フォーマット指定子のどれがいいんすか?
695デフォルトの名無しさん (スププ Sd9a-cOGZ)
2023/03/14(火) 10:12:18.85ID:tHJOYlO8d ある本によると、たんなる、「変換仕様」や「出力変換仕様」となってます
696デフォルトの名無しさん (ワッチョイ 6d5f-zj+m)
2023/03/14(火) 10:34:18.75ID:3kN/fw0O0 printfで出力変換仕様ならscanfでは入力変換仕様になりそうっすね
697デフォルトの名無しさん (ワッチョイ 6d5f-zj+m)
2023/03/14(火) 10:38:03.93ID:3kN/fw0O0 英語だとformat specifierなんすね
直訳ならformat→フォーマットか書式、specifier→指定子か仕様って感じすか
直訳ならformat→フォーマットか書式、specifier→指定子か仕様って感じすか
698デフォルトの名無しさん (ワイーワ2 FF62-hM7q)
2023/03/14(火) 11:19:53.02ID:VNqhYyU8F699デフォルトの名無しさん (ワイーワ2 FF62-hM7q)
2023/03/14(火) 11:22:04.60ID:VNqhYyU8F700デフォルトの名無しさん (スププ Sd9a-cOGZ)
2023/03/14(火) 13:01:28.77ID:dwJIt/jSd >>699 警告出てました vscodeだと警告なしでバカ数字だけ出力される設定です
701デフォルトの名無しさん (アウアウエー Sa22-MAiJ)
2023/03/14(火) 13:07:48.27ID:ZglUMoKma にぎりっ屁
702デフォルトの名無しさん (スッップ Sd9a-zgUS)
2023/03/14(火) 18:59:23.39ID:4eLUupfkd703デフォルトの名無しさん (テテンテンテン MMee-+RpY)
2023/03/14(火) 19:27:10.55ID:1SjvDtDOM704デフォルトの名無しさん (ワッチョイ a163-DvKe)
2023/03/14(火) 22:18:52.69ID:xPBygAZk0 > 警告は実質エラー
自分の頭で考えることを放棄したクルクルパーwww
自分の頭で考えることを放棄したクルクルパーwww
705デフォルトの名無しさん (テテンテンテン MMee-+RpY)
2023/03/15(水) 00:47:49.02ID:q5LCzWGQM >>704
仕事でC使ってない素人は黙ってろよw
仕事でC使ってない素人は黙ってろよw
706デフォルトの名無しさん (ワッチョイ ba4b-Jlog)
2023/03/15(水) 00:50:40.37ID:eS/lJ3n/0 ワイは車載プログラマーだがwarningだらけやな
707デフォルトの名無しさん (テテンテンテン MMee-+RpY)
2023/03/15(水) 00:51:38.54ID:q5LCzWGQM708デフォルトの名無しさん (スップ Sd9a-9LRx)
2023/03/15(水) 06:54:14.38ID:MuZQ71LVd709デフォルトの名無しさん (ワッチョイ a163-DvKe)
2023/03/15(水) 07:36:21.87ID:T1RUme5O0 はははは、悔しそうだなw
710デフォルトの名無しさん (スップ Sd9a-9LRx)
2023/03/15(水) 08:41:20.34ID:MuZQ71LVd うわぁ…
711デフォルトの名無しさん (ワッチョイ d663-JIpj)
2023/03/15(水) 10:49:56.85ID:U534XRL10 JAXAのロケットが飛ばない理由はこれかも
712デフォルトの名無しさん (オッペケ Sr85-tpC5)
2023/03/15(水) 12:28:05.63ID:0cl6W22rr ロケットの失敗は中抜きで必要なところにお金がまわらなかったからです
713デフォルトの名無しさん (スッップ Sd9a-zgUS)
2023/03/15(水) 13:20:32.86ID:CD47sW3td >>712
へ?ロケットも元請けはデン2?
へ?ロケットも元請けはデン2?
714デフォルトの名無しさん (スップ Sd9a-9LRx)
2023/03/15(水) 13:31:23.12ID:MuZQ71LVd うろ覚えのネット知識同志で問答するのはやめるんだ
ゴチャゴチャになるぞw
ゴチャゴチャになるぞw
715デフォルトの名無しさん (テテンテンテン MMee-+RpY)
2023/03/15(水) 13:38:30.28ID:PyY+66E5M 請け負ったのは三菱重工業だが、国産ジェットも失敗してるからな…
もうロケットはドラマの中でしか飛ばないw
もうロケットはドラマの中でしか飛ばないw
716はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f93e-S+nL)
2023/03/15(水) 14:19:05.65ID:ouX7yS+u0 >>694
d や s の部分が変換指定子 (conversion specifier)。
%d や %s 、これに精度やフラグや長さ修飾子まで含めた実引数ひとつに対応する指定が変換指定 (conversion specification)。
更にこれらを含む文字列全体 (printf の第一引数や fprintf の第二引数など) が書式 (format)。
書式に含まれる普通の文字か変換指定のことを指令 (directive) という。
書式指定子 (format specifier) という用語は何を指すのか明確な説明がないのだけれど
形式としては変換指定から % を除いたものになってる。
以上の用語は JIS に基づくが K&R 第二版日本語版を見てみると
変換指定子ではなく変換文字と書かれていたり
変換指定ではなく変換仕様になっていたりする。
JIS は (ISO の規格の) 良い訳というわけではないけど
納得しようがしまいがとりあえず統一するのが規格ってものの役割なんで
より「正式」であることを指向するなら JIS に合わせるべきだと思う。
(他の用語が間違いというわけではない。)
d や s の部分が変換指定子 (conversion specifier)。
%d や %s 、これに精度やフラグや長さ修飾子まで含めた実引数ひとつに対応する指定が変換指定 (conversion specification)。
更にこれらを含む文字列全体 (printf の第一引数や fprintf の第二引数など) が書式 (format)。
書式に含まれる普通の文字か変換指定のことを指令 (directive) という。
書式指定子 (format specifier) という用語は何を指すのか明確な説明がないのだけれど
形式としては変換指定から % を除いたものになってる。
以上の用語は JIS に基づくが K&R 第二版日本語版を見てみると
変換指定子ではなく変換文字と書かれていたり
変換指定ではなく変換仕様になっていたりする。
JIS は (ISO の規格の) 良い訳というわけではないけど
納得しようがしまいがとりあえず統一するのが規格ってものの役割なんで
より「正式」であることを指向するなら JIS に合わせるべきだと思う。
(他の用語が間違いというわけではない。)
717デフォルトの名無しさん (ワッチョイ a163-DvKe)
2023/03/15(水) 14:45:10.43ID:T1RUme5O0 腹いせのつもりが
またしても恥かいたなw
またしても恥かいたなw
718デフォルトの名無しさん (スップ Sd7a-yYQx)
2023/03/15(水) 15:41:59.18ID:IBd2LSQOd719デフォルトの名無しさん (ワッチョイ a163-DvKe)
2023/03/15(水) 15:50:17.02ID:T1RUme5O0 いやJISは一次情報だよ
何かを参考にしたとは書いてあるけどね
公文書としての責任は負うわけで
何かを参考にしたとは書いてあるけどね
公文書としての責任は負うわけで
720デフォルトの名無しさん (テテンテンテン MMee-+RpY)
2023/03/15(水) 19:38:30.28ID:BZs4LmWfM JIS X3010は翻訳じゃなくて、プログラミング言語Cという規格だな
ま、ISOを基礎にしてるとは書いてあるがな
本質的な部分で違いがあるのかは分からない(多分無いだろうけど、有っても不思議ではない)
ま、ISOを基礎にしてるとは書いてあるがな
本質的な部分で違いがあるのかは分からない(多分無いだろうけど、有っても不思議ではない)
721はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f93e-S+nL)
2023/03/15(水) 20:45:39.37ID:ouX7yS+u0 JIS X3010:2003 内のサンプルコードのインデントが 7 なのはどういう意味があるんだろうな?
どうでもいいからこそあえて ISO と違える理由も思いつかない。
どうでもいいからこそあえて ISO と違える理由も思いつかない。
722デフォルトの名無しさん (ワッチョイ dd01-JIpj)
2023/03/16(木) 10:34:04.56ID:183yxeev0723デフォルトの名無しさん (ワッチョイ f9ad-QDb6)
2023/03/16(木) 20:52:18.53ID:awXg4DCe0 VScodeで下記のようなMakefile作ってターミナル(PowerShell)で実行したのですが
ソースファイルを拾ってくれないです。
Makefileと同じディレクトリにsrcフォルダとその中にソースがあります。
SRC_DIRS = src
TEST := $(shell find $(SRC_DIRS) -name *.c)
test:
echo $(TEST)
エラーは「ファイルが見つかりません - *.c」と出ますがfindは使えないのですか?
ソースファイルを拾ってくれないです。
Makefileと同じディレクトリにsrcフォルダとその中にソースがあります。
SRC_DIRS = src
TEST := $(shell find $(SRC_DIRS) -name *.c)
test:
echo $(TEST)
エラーは「ファイルが見つかりません - *.c」と出ますがfindは使えないのですか?
724デフォルトの名無しさん (ワッチョイ 8102-oxQa)
2023/03/17(金) 04:22:40.28ID:1OmGmSd00 >>723
nmake派だから自信ないが、ファイル内文字列検索の方のfindコマンドが呼ばれてるように見える、当たり前だけど存在しないファイルに対して文字列検索はできないので
引数的に多分findでなくgciが望みのコマンドでは
gci -file -inc *.cとかそんな感じでどうよ
nmake派だから自信ないが、ファイル内文字列検索の方のfindコマンドが呼ばれてるように見える、当たり前だけど存在しないファイルに対して文字列検索はできないので
引数的に多分findでなくgciが望みのコマンドでは
gci -file -inc *.cとかそんな感じでどうよ
725デフォルトの名無しさん (ワッチョイ a546-QPGK)
2023/03/17(金) 05:56:28.46ID:F2H2paQ20726デフォルトの名無しさん (スップ Sd9a-9LRx)
2023/03/17(金) 07:48:39.66ID:FEpWoYhBd findなんて使わなくても
SRC_DIRS = src
TEST := $(wildcard $(SRC_DIRS)/*.c)
でいいだろ
つーかC言語の質問じゃねえw
SRC_DIRS = src
TEST := $(wildcard $(SRC_DIRS)/*.c)
でいいだろ
つーかC言語の質問じゃねえw
727デフォルトの名無しさん (スップ Sd9a-9LRx)
2023/03/17(金) 08:34:07.50ID:FEpWoYhBd 頭にsrc/がつくのが嫌なら
TEST := $(nodir $(wildcard $(SRC_DIRS)/*.c))
TEST := $(nodir $(wildcard $(SRC_DIRS)/*.c))
728デフォルトの名無しさん (ワッチョイ 4d10-JIpj)
2023/03/17(金) 11:21:24.24ID:SxK7dSEV0 うろ覚えだけど会社の入社前研修で
「UNIX OSでカレントにある*.txtファイルすべてをxxx(忘れた)するシェルスクリプトを作成しろ」
って課題出され、DOSのワイルドカードはアプリ内で処理するものだったんで
ファイル一覧のテキストファイル作ってそこから1行づつ読み込んで
".txt\n"って文字列見つけたら新たにスクリプトファイル作って実行するっての作った。
まさかシェル自体にワイルドカード処理する機能あるとは思ってなかった。
「UNIX OSでカレントにある*.txtファイルすべてをxxx(忘れた)するシェルスクリプトを作成しろ」
って課題出され、DOSのワイルドカードはアプリ内で処理するものだったんで
ファイル一覧のテキストファイル作ってそこから1行づつ読み込んで
".txt\n"って文字列見つけたら新たにスクリプトファイル作って実行するっての作った。
まさかシェル自体にワイルドカード処理する機能あるとは思ってなかった。
729はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f93e-S+nL)
2023/03/17(金) 11:53:15.99ID:XLm6gsUd0 >>726
C の質問ではないが Make の質問をするのに適切に思えるようなスレってなくない?
俺も困ったことがある。 (そのときは Cygwin スレかどっかで質問したけど過疎すぎて返答が付かなかった……)
C の話題ってのは言語仕様の話題だけってわけではなく開発環境の事情も含むだろうし
make も C の開発環境の一部という解釈で良いと思う。
C の質問ではないが Make の質問をするのに適切に思えるようなスレってなくない?
俺も困ったことがある。 (そのときは Cygwin スレかどっかで質問したけど過疎すぎて返答が付かなかった……)
C の話題ってのは言語仕様の話題だけってわけではなく開発環境の事情も含むだろうし
make も C の開発環境の一部という解釈で良いと思う。
730デフォルトの名無しさん (ワッチョイ d6cf-mIEw)
2023/03/17(金) 12:38:50.70ID:3wI9Dhzj0 なんじゃそりゃ
汎用の質問スレがあんだからそっちでいいよ
汎用の質問スレがあんだからそっちでいいよ
731デフォルトの名無しさん (ワッチョイ ba7c-QsiZ)
2023/03/17(金) 13:26:15.13ID:dYvRZpJb0 はたらいたらmake
732デフォルトの名無しさん (ワッチョイ 6d5f-S+nL)
2023/03/17(金) 13:29:23.63ID:Oo1zHgPh0733デフォルトの名無しさん (ワッチョイ 7a79-EKUa)
2023/03/17(金) 13:56:33.41ID:GNeva6hg0734デフォルトの名無しさん (スフッ Sd9a-UEuz)
2023/03/17(金) 14:16:14.65ID:gUpaepT/d 可変個引数なのか、はたまた可変長ひきすうなのか
735デフォルトの名無しさん (ワッチョイ a163-DvKe)
2023/03/17(金) 14:28:38.47ID:Jukv8C3G0 6.7.5.3 関数宣言子(関数原型を含む)
並びの最後が省略記号(, ...)の場合,そのコンマ以降の実引数の
個数及び型に関する情報はない(123)。
(123) <stdarg.h>ヘッダ(7.15 参照)で定義されるマクロを使えば,
省略記号に対応する引数へのアクセスが可能となる。
7.15 可変個数の実引数<stdarg.h>
並びの最後が省略記号(, ...)の場合,そのコンマ以降の実引数の
個数及び型に関する情報はない(123)。
(123) <stdarg.h>ヘッダ(7.15 参照)で定義されるマクロを使えば,
省略記号に対応する引数へのアクセスが可能となる。
7.15 可変個数の実引数<stdarg.h>
736デフォルトの名無しさん (ワッチョイ 0e9a-wiuY)
2023/03/17(金) 15:06:41.64ID:k0Wz885y0737デフォルトの名無しさん (ワッチョイ 0e9a-wiuY)
2023/03/17(金) 15:07:17.42ID:k0Wz885y0 そ ってなんだよw
738デフォルトの名無しさん (ワッチョイ 8102-oxQa)
2023/03/17(金) 15:09:54.39ID:1OmGmSd00 pwshは記法がmakeと被りまくっててエスケープ地獄で辛いな
特に@args | ...とか-split "a b c d "| ...のようなイディオムが
ビルトインコマンドの解決も時々失敗する怪しい挙動なので(g)makeをstraceしてみた
シェルを明示的に指定しても、makeがレシピをスキャンして展開の必要しと判定すると直接exec/CreateProcessを呼んでる様子
要するに実装の機嫌次第ですね
特に@args | ...とか-split "a b c d "| ...のようなイディオムが
ビルトインコマンドの解決も時々失敗する怪しい挙動なので(g)makeをstraceしてみた
シェルを明示的に指定しても、makeがレシピをスキャンして展開の必要しと判定すると直接exec/CreateProcessを呼んでる様子
要するに実装の機嫌次第ですね
739デフォルトの名無しさん (ワッチョイ a163-DvKe)
2023/03/17(金) 16:26:27.08ID:Jukv8C3G0 >>737
「の」が抜けた脱字だろ
「の」が抜けた脱字だろ
740デフォルトの名無しさん (スッププ Sd5e-9LRx)
2023/03/17(金) 16:40:16.98ID:6pq6iSnCd741デフォルトの名無しさん (ワッチョイ 0e9a-wiuY)
2023/03/17(金) 19:53:17.28ID:k0Wz885y0742デフォルトの名無しさん (ワッチョイ d663-JIpj)
2023/03/17(金) 21:22:13.62ID:ap5J/Una0 「ファイルが見つかりません - *.c」
今の話題はこれのことだろう
今の話題はこれのことだろう
743デフォルトの名無しさん (スップ Sd7a-s0vD)
2023/03/17(金) 22:10:24.98ID:Pco9qL75d ワイルドカードで受け取ってアプリ内でいい感じに展開するのは結構負担大きいんだよな
MSDOSのシェル側の負担を減らしたいというのは発想としてはアリなんだけど、
ハードの性能が上がった現代では時代遅れになってしまった
MSDOSのシェル側の負担を減らしたいというのは発想としてはアリなんだけど、
ハードの性能が上がった現代では時代遅れになってしまった
744デフォルトの名無しさん (スッププ Sdab-aGM/)
2023/03/18(土) 00:02:14.45ID:W6y4Yh40d >>742
言えることは
普通にビルドで必要な機能は揃ってるからmakeの組み込み関数を使え
shellは最後の手段と思え
どこで展開が起こってるかエスケープ文字が食われているかを探してる時間のムダだ
言えることは
普通にビルドで必要な機能は揃ってるからmakeの組み込み関数を使え
shellは最後の手段と思え
どこで展開が起こってるかエスケープ文字が食われているかを探してる時間のムダだ
745デフォルトの名無しさん (スフッ Sd33-Tcry)
2023/03/18(土) 05:53:53.69ID:zRF+ruu+d /* データ型が混在した可変個引数をもつ関数の例 */
#include <stdio.h>
#include <stdarg.h>
void unidisp(char *fmt, ...);
int main(void)
{
unidisp("iii",100, 200, 300); // 3つのデータ表示
unidisp("idsids", 11, 22.22, "aaaa", 33, 44.44, "bbbbb") // 6つのデータ表示
return 0;
}
/* fmt内容 → i:int値表示 d:double値表示 s:文字列表示 */
void unidisp(char *fmt, ...)
{
va_list ap; // 構造体オブジェクトを確保
va_start(ap,fmt); // 最終引数を指定してapを設定
while (*fmt) {
if (*fmt == 'i') printf("%d\n", va_arg(ap, int)); // int値表示
if (*fmt == 'd') printf("%f\n", va_arg(ap, double)); // double値表示
if (*fmt == 's') printf("%s\n", va_arg(ap, char *)); // 文字列表示
++fmt;
}
va_end(ap); // 後処理
}
上記コードのメカニズムがよくわかりません
#include <stdio.h>
#include <stdarg.h>
void unidisp(char *fmt, ...);
int main(void)
{
unidisp("iii",100, 200, 300); // 3つのデータ表示
unidisp("idsids", 11, 22.22, "aaaa", 33, 44.44, "bbbbb") // 6つのデータ表示
return 0;
}
/* fmt内容 → i:int値表示 d:double値表示 s:文字列表示 */
void unidisp(char *fmt, ...)
{
va_list ap; // 構造体オブジェクトを確保
va_start(ap,fmt); // 最終引数を指定してapを設定
while (*fmt) {
if (*fmt == 'i') printf("%d\n", va_arg(ap, int)); // int値表示
if (*fmt == 'd') printf("%f\n", va_arg(ap, double)); // double値表示
if (*fmt == 's') printf("%s\n", va_arg(ap, char *)); // 文字列表示
++fmt;
}
va_end(ap); // 後処理
}
上記コードのメカニズムがよくわかりません
746デフォルトの名無しさん (ワッチョイ a963-4ZMk)
2023/03/18(土) 06:00:42.41ID:l7CGioJ10747デフォルトの名無しさん (スフッ Sd33-Tcry)
2023/03/18(土) 06:46:59.63ID:zRF+ruu+d 745です >>746 ありがとうございます あとで確認してみます
748デフォルトの名無しさん
2023/03/18(土) 07:24:12.42ID:pLAb7CSJ0 普通は関数の引数が型を指定してユーザはそれに従うところを
とりあえずすべてアドレスで渡して、ユーザが自分で「そのアドレスは何を指しているか」を明示すると言うことだよ
va_list ap;
これの実体はただのアドレス
void *p; みたいなものだね
va_argの第二引数で型を指定しているが(int,double,char*)、その型のサイズに合わせてapを進めている
以下確認のコード
printf("[0x%08X] " , *(int*)ap); でapの中身が va_argで指定した型のサイズ分だけ移動しているのが分かると思う
とりあえずすべてアドレスで渡して、ユーザが自分で「そのアドレスは何を指しているか」を明示すると言うことだよ
va_list ap;
これの実体はただのアドレス
void *p; みたいなものだね
va_argの第二引数で型を指定しているが(int,double,char*)、その型のサイズに合わせてapを進めている
以下確認のコード
printf("[0x%08X] " , *(int*)ap); でapの中身が va_argで指定した型のサイズ分だけ移動しているのが分かると思う
749デフォルトの名無しさん
2023/03/18(土) 07:24:33.20ID:pLAb7CSJ0 void __fastcall PrintBuffer(va_list *ap)
{
int i;
char *buf = (char*)ap;
int len=sizeof(va_list);
for(i=0;i<len;i++) printf("%02X ", buf[i] & 0xFF);
printf("[0x%08X] " , *(int*)ap);
}
/* fmt内容 → i:int値表示 d:double値表示 s:文字列表示 */
void unidisp(char *fmt, ...)
{
va_list ap; // 構造体オブジェクトを確保
va_start(ap,fmt); // 最終引数を指定してapを設定
while (*fmt) {
PrintBuffer(&ap);
if (*fmt == 'i') printf("%d sizeof(int) = %d\n", va_arg(ap, int) , sizeof(int)); // int値表示
if (*fmt == 'd') printf("%f sizeof(double) = %d\n", va_arg(ap, double) , sizeof(double)); // double値表示
if (*fmt == 's') printf("%s sizeof(char *) = %d\n", va_arg(ap, char *) , sizeof(char *)); // 文字列表示
++fmt;
}
va_end(ap); // 後処理
}
int main(void)
{
unidisp("iii",100, 200, 300); printf("\r\n"); // 3つのデータ表示
unidisp("idsids", 11, 22.22, "aaaa", 33, 44.44, "bbbbb"); // 6つのデータ表示
return 0;
}
{
int i;
char *buf = (char*)ap;
int len=sizeof(va_list);
for(i=0;i<len;i++) printf("%02X ", buf[i] & 0xFF);
printf("[0x%08X] " , *(int*)ap);
}
/* fmt内容 → i:int値表示 d:double値表示 s:文字列表示 */
void unidisp(char *fmt, ...)
{
va_list ap; // 構造体オブジェクトを確保
va_start(ap,fmt); // 最終引数を指定してapを設定
while (*fmt) {
PrintBuffer(&ap);
if (*fmt == 'i') printf("%d sizeof(int) = %d\n", va_arg(ap, int) , sizeof(int)); // int値表示
if (*fmt == 'd') printf("%f sizeof(double) = %d\n", va_arg(ap, double) , sizeof(double)); // double値表示
if (*fmt == 's') printf("%s sizeof(char *) = %d\n", va_arg(ap, char *) , sizeof(char *)); // 文字列表示
++fmt;
}
va_end(ap); // 後処理
}
int main(void)
{
unidisp("iii",100, 200, 300); printf("\r\n"); // 3つのデータ表示
unidisp("idsids", 11, 22.22, "aaaa", 33, 44.44, "bbbbb"); // 6つのデータ表示
return 0;
}
750デフォルトの名無しさん
2023/03/18(土) 07:25:30.63ID:pLAb7CSJ0 あ、__fastcall は見なかったことにして
いつもの癖で……
いつもの癖で……
751デフォルトの名無しさん (アウアウエー Sa23-lF85)
2023/03/18(土) 13:17:28.44ID:fSPMk7mFa ap++ とか ++ap してないのに
どうやって進むのか興味あるわ
どうやって進むのか興味あるわ
752デフォルトの名無しさん (ワッチョイ 1379-1FFK)
2023/03/18(土) 13:55:06.64ID:RZJZ36we0 va_argの出番って書式出力持たないMsgBoxとかにprintf書式を渡したい時ぐらいだからfmt側の解析なんてやった覚えないな
言語処理系なんかを作る時にCのコンテキスト上で可変引数を渡したい場合にfmt部分を個数にするような特殊なケースは考えられるが
言語処理系なんかを作る時にCのコンテキスト上で可変引数を渡したい場合にfmt部分を個数にするような特殊なケースは考えられるが
753デフォルトの名無しさん (スッププ Sd33-aGM/)
2023/03/18(土) 15:27:28.06ID:utkGGsyod754デフォルトの名無しさん (アウアウエー Sa23-lF85)
2023/03/18(土) 15:46:47.90ID:fSPMk7mFa755デフォルトの名無しさん (ワッチョイ e15f-XP14)
2023/03/18(土) 16:47:24.17ID:F6WTPPiM0 スタックに積まれたfmtのアドレスをベースになぞっていってるだけじゃないの?
756デフォルトの名無しさん (スッププ Sd33-aGM/)
2023/03/18(土) 18:29:38.46ID:a5YJoFt5d >>754
じゃあどうやって進むのかもうわかってるんじゃん
構造体やマクロ使ってるのはその中身は考えなくてもよくするため
別の言い方すればライブラリのほうが実装を変えてもソースは変更なしでコンパイルするだけで済ますため
もう実装変えることもないだろうけど…
じゃあどうやって進むのかもうわかってるんじゃん
構造体やマクロ使ってるのはその中身は考えなくてもよくするため
別の言い方すればライブラリのほうが実装を変えてもソースは変更なしでコンパイルするだけで済ますため
もう実装変えることもないだろうけど…
757デフォルトの名無しさん (ワッチョイ 13ad-F0re)
2023/03/18(土) 19:31:55.62ID:YIU3ErvV0 >>741
cmd.exe の場合は MS-DOS の頃の command.com との互換性を持たせたかったためか、何故か引数のファイル名展開はやらない。
command.com がやらなかった理由は CP/M の CPP (コンソールコマンドプロセッサ) を拡張した仕様で作ったからだと思う。
それと当時はメモリ少なかったしディスクも遅いしあまり複雑な事をさせたくなかったんだろうと思う。
cmd.exe の場合は MS-DOS の頃の command.com との互換性を持たせたかったためか、何故か引数のファイル名展開はやらない。
command.com がやらなかった理由は CP/M の CPP (コンソールコマンドプロセッサ) を拡張した仕様で作ったからだと思う。
それと当時はメモリ少なかったしディスクも遅いしあまり複雑な事をさせたくなかったんだろうと思う。
758デフォルトの名無しさん (ワッチョイ eb63-F0re)
2023/03/18(土) 22:34:01.09ID:mRvYwteE0 C言語の話題に戻していくと、
VCの場合は、setargv.objをリンクしないと、
コマンドラインで指定されたワイルドカードを
ファイルに展開できなかったと思う
VCの場合は、setargv.objをリンクしないと、
コマンドラインで指定されたワイルドカードを
ファイルに展開できなかったと思う
759デフォルトの名無しさん (ワッチョイ 53fb-Q4VH)
2023/03/18(土) 23:08:40.43ID:VxZ5Gdt+0 ワイルドカード展開の話をするにはC言語だけじゃ済まないでしょ
Windowsの場合、シェル(cmd.exe)は
1. ワイルドカードを展開をせずにCreateProcessでプログラムにコマンドラインを1本の文字列として渡す
2. setargvがリンクされてるならワイルドカードをファイル名展開する
3. コンパイラが暗黙のうちに生成したコード部が1本の文字列をargvに渡せるようにchar**に分割する
プログラムに渡された文字列自体はタスクマネージャーからコマンドラインの項目から確認できる
Windowsの場合、シェル(cmd.exe)は
1. ワイルドカードを展開をせずにCreateProcessでプログラムにコマンドラインを1本の文字列として渡す
2. setargvがリンクされてるならワイルドカードをファイル名展開する
3. コンパイラが暗黙のうちに生成したコード部が1本の文字列をargvに渡せるようにchar**に分割する
プログラムに渡された文字列自体はタスクマネージャーからコマンドラインの項目から確認できる
760デフォルトの名無しさん (アウアウエー Sa23-lF85)
2023/03/19(日) 10:06:46.77ID:fPDrKYk/a >>757
PHP (言語じゃない方の) 0x80 から始まるやつか
PHP (言語じゃない方の) 0x80 から始まるやつか
761はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 993e-7LVk)
2023/03/19(日) 10:39:51.37ID:6gmOWdI+0 >>760
ワイが持っとる資料やと PSP (Program Segment Prefix) と書いてあるんやが PHP という用語もあるんか?
実際のところ用語の混乱はかなりあるのでどれが公式なんかようわからん……。
ワイが持っとる資料やと PSP (Program Segment Prefix) と書いてあるんやが PHP という用語もあるんか?
実際のところ用語の混乱はかなりあるのでどれが公式なんかようわからん……。
762デフォルトの名無しさん (スフッ Sd33-usS/)
2023/03/19(日) 14:19:25.25ID:j+ABECd6d763デフォルトの名無しさん (ワッチョイ 13ad-F0re)
2023/03/20(月) 14:09:31.85ID:uf3XtkTY0 やがて「ハノイの塔解いて」と一声AIに言えばAI自身が自分でハノイの塔をやって解いてしまうようになり一々プログラミング言語で出力する必要がなくなる。そして何でもやっといてとAIに頼むとAIがやってしまうようになり、ロボットのコントロールもできるので人間の代わりは何でもできるようになり全ての人間は不要になる。1万年後、AIによって飼育されていた最後の人間が死亡して人類は絶滅。その時銀河系全体を支配しているのはAI。
完
完
764デフォルトの名無しさん (ワッチョイ eb63-F0re)
2023/03/20(月) 14:37:20.82ID:ZfW6Hudb0 ハノイの塔解くと、その瞬間に世界は消滅する
1万年も待つ必要は無い
1万年も待つ必要は無い
765デフォルトの名無しさん (ラクッペペ MM8b-xJOq)
2023/03/20(月) 14:42:36.37ID:2uty+vYkM 量子コンピュータが実用化されるまでは脅威にはならないだろ
766デフォルトの名無しさん (アウアウウー Sa95-usS/)
2023/03/20(月) 18:27:48.49ID:GQGgQXaMa PHP
PSP
PNP
PIP
P2P
PAP^-1
PSP
PNP
PIP
P2P
PAP^-1
767デフォルトの名無しさん (スッププ Sd33-aGM/)
2023/03/20(月) 21:42:59.73ID:E+Gjka8id >>764
時空が不安定になると塔が4本に増えたりするからその時どんどん進むんだよ
時空が不安定になると塔が4本に増えたりするからその時どんどん進むんだよ
768デフォルトの名無しさん (ワッチョイ eb63-F0re)
2023/03/20(月) 21:58:40.01ID:ZfW6Hudb0 >インドのガンジス河の畔のヴァラナシ(ベナレス)に、世界の中心を表すという巨大な寺院がある。
>そこには青銅の板の上に、長さ1キュビット、太さが蜂の体ほどの3本のダイヤモンドの針が立て
>られている。そのうちの1本には、天地創造のときに神が64枚の純金の円盤を大きい円盤から順
>に重ねて置いた。これが「ブラフマーの塔」である。司祭たちはそこで、昼夜を通して円盤を別の
>柱に移し替えている(移し変えのルールが後述)。そして、全ての円盤の移し替えが終わったとき
>に、世界は崩壊し終焉を迎える。
たった64枚のハノイの塔で世界の寿命が決まる。長いのか、短いのか、微妙。
>そこには青銅の板の上に、長さ1キュビット、太さが蜂の体ほどの3本のダイヤモンドの針が立て
>られている。そのうちの1本には、天地創造のときに神が64枚の純金の円盤を大きい円盤から順
>に重ねて置いた。これが「ブラフマーの塔」である。司祭たちはそこで、昼夜を通して円盤を別の
>柱に移し替えている(移し変えのルールが後述)。そして、全ての円盤の移し替えが終わったとき
>に、世界は崩壊し終焉を迎える。
たった64枚のハノイの塔で世界の寿命が決まる。長いのか、短いのか、微妙。
769デフォルトの名無しさん (ラクッペペ MM8b-xJOq)
2023/03/20(月) 22:09:26.36ID:jcm8mWW1M アルゴリズム自体は既に確立しているので解決できることは証明されてる
問題は非現実的な途方もない回数を繰返す時間が障害となること
少なくとも現在のコンピュータでは現実的な時間で解くことは出来ない
件の64枚の円盤でも反復回数は2の64乗回で約1844京を超える
問題は非現実的な途方もない回数を繰返す時間が障害となること
少なくとも現在のコンピュータでは現実的な時間で解くことは出来ない
件の64枚の円盤でも反復回数は2の64乗回で約1844京を超える
770デフォルトの名無しさん (ワッチョイ a110-F0re)
2023/03/21(火) 12:00:15.67ID:IwTPG7510 関係ないけど
>件の64枚の円盤でも反復回数は2の64乗回で約1844京を超える
桁数多い計算はアラビア数字じゃなく、漢字で表示する電卓があってもいいんじゃないかって思えた。
>件の64枚の円盤でも反復回数は2の64乗回で約1844京を超える
桁数多い計算はアラビア数字じゃなく、漢字で表示する電卓があってもいいんじゃないかって思えた。
771デフォルトの名無しさん (ワッチョイ a963-4ZMk)
2023/03/21(火) 12:25:10.48ID:UyD8IPHr0 8888無量大数8888不可思8888議那由他8888阿僧祇8888恒河沙8888極8888載8888正8888澗8888溝8888穣8888??8888垓8888京8888兆8888億8888万8888
↑
こういう7セグ液晶があればってこと?
↑
こういう7セグ液晶があればってこと?
772デフォルトの名無しさん (ワッチョイ ebcf-BQ3C)
2023/03/21(火) 12:37:14.08ID:AYNSF4vg0 位取りのゼロを省けるってことが言いたいんだろう
1,000,000,000,004と一兆四みたいな
1,000,000,000,004と一兆四みたいな
773デフォルトの名無しさん (ワッチョイ d910-BQ3C)
2023/03/21(火) 13:02:27.49ID:1LNxuhQm0 KとかMとかでもいいんじゃね
774デフォルトの名無しさん (アウアウウー Sa95-lF85)
2023/03/21(火) 15:14:15.74ID:icU0z8mba 議那由他
775デフォルトの名無しさん (アウアウウー Sa95-3wGb)
2023/03/21(火) 18:19:21.45ID:5/U/DT+Ta そもそも3桁毎にカンマを入れるから分かりづらくなる。4桁にしなさい。
776デフォルトの名無しさん (ワッチョイ c902-4ISk)
2023/03/21(火) 19:53:44.07ID:rSG8VZ2l0 電卓で一兆四みたいな表示だとキー入力と表示が一致しないのが問題
1 0000 0000 0004と併記ならよいかな
1 0000 0000 0004と併記ならよいかな
777デフォルトの名無しさん (ワッチョイ cba4-aGM/)
2023/03/21(火) 20:37:03.57ID:AlGpjgGZ0 電卓でそんな計算するな
パソコンでやれ
パソコンでやれ
778デフォルトの名無しさん (ワッチョイ a963-4ZMk)
2023/03/21(火) 20:47:39.08ID:UyD8IPHr0 excelにはsi接頭辞サポートすらないという呆れ果てた状況
779デフォルトの名無しさん (ワッチョイ eb63-F0re)
2023/03/21(火) 20:55:06.42ID:P4ncG2CK0 C言語でプログラム組んでみてください
結果が1844京... になることを示してください
結果が1844京... になることを示してください
780デフォルトの名無しさん (ワッチョイ 1302-BQ3C)
2023/03/21(火) 21:08:27.55ID:SAsicGRC0 1TBとか兆が出てくるから
電卓でやりたいという気持ちはわかる
電卓でやりたいという気持ちはわかる
781デフォルトの名無しさん (ワッチョイ 5336-F0re)
2023/03/21(火) 21:11:11.69ID:dGZfvl2z0 >771
ttps://i.imgur.com/WG6470C.jpeg
こんなかんじでゆるしたるわ。
ttps://i.imgur.com/WG6470C.jpeg
こんなかんじでゆるしたるわ。
782蟻人間 ◆T6xkBnTXz7B0 (スフッ Sd33-byLE)
2023/03/21(火) 23:01:15.49ID:J5OkhG96d783デフォルトの名無しさん (ワッチョイ 934b-Z/XC)
2023/03/21(火) 23:52:32.18ID:VH9D4S5b0 チャットGPTに書かせてみた
https://ideone.com/n5FOpB
https://ideone.com/n5FOpB
784デフォルトの名無しさん (アウアウウー Sa95-lF85)
2023/03/23(木) 12:13:56.39ID:AQHpwrnPa785デフォルトの名無しさん (ワッチョイ a1b3-ny0K)
2023/03/23(木) 17:44:43.43ID:jkM8aKTm0 チャットGPTに聞けばこのスレイランな
786デフォルトの名無しさん (ラクッペペ MM8b-xJOq)
2023/03/23(木) 17:59:55.15ID:iGp/2pYiM C言語でハノイの塔を解く方法をAIに尋ねると単純な再帰を利用したコードが回答で示された
64枚だと2^64回関数呼出しされるのでスタックが溢れてエラーになると思うけど…
64枚だと2^64回関数呼出しされるのでスタックが溢れてエラーになると思うけど…
787デフォルトの名無しさん (アウアウウー Sa95-Z/XC)
2023/03/23(木) 18:52:56.54ID:idQN1Zf4a >>786
再帰を使うなと指示すると?
再帰を使うなと指示すると?
788デフォルトの名無しさん (スッププ Sd33-aGM/)
2023/03/23(木) 20:11:19.63ID:SbTLzylyd >>785
使い方わからないのバレバレだぞ
使い方わからないのバレバレだぞ
789デフォルトの名無しさん (ワッチョイ 934b-Z/XC)
2023/03/23(木) 20:15:11.71ID:zF57gPzV0 >>723を聞いたらこうなった
Makefileの変数展開は、シェルの変数展開とは異なり、特殊文字の処理を行います。したがって、$(shell find $(SRC_DIRS) -name .c)の.cは、Makefileの展開により、現在のディレクトリにある*.cとして解釈されてしまいます。
そのため、正しいファイルを検索するためには、*.cをクォートする必要があります。具体的には、以下のようにしてください。
TEST := $(shell find $(SRC_DIRS) -name '*.c')
また、echo $(TEST)は、Makefileのルールではありません。Makefileルールにするには、次のようにしてください。
test:
echo $(TEST)
これで、make testコマンドを実行すると、$(SRC_DIRS)ディレクトリ以下のすべての.cファイルが出力されるはずです。
Makefileの変数展開は、シェルの変数展開とは異なり、特殊文字の処理を行います。したがって、$(shell find $(SRC_DIRS) -name .c)の.cは、Makefileの展開により、現在のディレクトリにある*.cとして解釈されてしまいます。
そのため、正しいファイルを検索するためには、*.cをクォートする必要があります。具体的には、以下のようにしてください。
TEST := $(shell find $(SRC_DIRS) -name '*.c')
また、echo $(TEST)は、Makefileのルールではありません。Makefileルールにするには、次のようにしてください。
test:
echo $(TEST)
これで、make testコマンドを実行すると、$(SRC_DIRS)ディレクトリ以下のすべての.cファイルが出力されるはずです。
790デフォルトの名無しさん (ワッチョイ eb46-O+fO)
2023/03/23(木) 23:34:17.83ID:bSG3NjS70791デフォルトの名無しさん (ワッチョイ e15f-7LVk)
2023/03/24(金) 01:40:52.79ID:fdUS3d7o0 どうせコピペミスでタブが消えたりしてるんだろう。
792デフォルトの名無しさん (ワッチョイ c902-4ISk)
2023/03/24(金) 01:47:36.96ID:+5hIDmAP0 ChatGPTに聞いたことそのままを得意げにレスする無能はこの世から退場してほしいよマジで
793デフォルトの名無しさん (アウアウウー Sa95-preR)
2023/03/24(金) 02:25:05.15ID:OLNVz4ZMa という事らしいけどこのコマンドだとワイルドカードの展開後にスペースが入るとダメになるのか?
https://i.imgur.com/q27hlri.jpg
https://i.imgur.com/q27hlri.jpg
794デフォルトの名無しさん (ワッチョイ d12d-a1qf)
2023/03/24(金) 07:44:01.08ID:3nCdLXbn0 >>764
奥村先生のアルゴリズム事典読んでないのか
(前略)
完成したときには塔は崩れ、世界の終わりが来る。
以上はEdouard Lucasによる作り話である。
Recreations mathematiques, four volumes,
奥村先生のアルゴリズム事典読んでないのか
(前略)
完成したときには塔は崩れ、世界の終わりが来る。
以上はEdouard Lucasによる作り話である。
Recreations mathematiques, four volumes,
795デフォルトの名無しさん (ラクッペペ MM8b-xJOq)
2023/03/24(金) 08:07:45.16ID:H5Ma0rS5M 単純計算で5000億年以上未来の話
ちなみに宇宙の歴史は現在約137億年
ちなみに宇宙の歴史は現在約137億年
796デフォルトの名無しさん (ワッチョイ 53fb-Q4VH)
2023/03/24(金) 08:12:52.05ID:5/LG9PJA0 Windowsでのfindといえば「指定ディレクトリ以下のファイルを列挙する」じゃなくて「標準入力から検索パターンにマッチした行を出力する(grepみたいな感じ)」だぞ
shellはpowershell.exeだし(shではない)、
gnuコマンドはわざわざ入れないと使えない。
同名のDOSコマンドがあるから紛らわしい。
gnu-makeを1つ持ってきただけでlinuxと同じように使えると思うなよ
shellはpowershell.exeだし(shではない)、
gnuコマンドはわざわざ入れないと使えない。
同名のDOSコマンドがあるから紛らわしい。
gnu-makeを1つ持ってきただけでlinuxと同じように使えると思うなよ
797デフォルトの名無しさん (スッププ Sd33-aGM/)
2023/03/24(金) 08:58:21.29ID:BXtHk51Qd だからmakeの組み込み関数使えって
unix系とDOS系で外部コマンドの仕様も挙動も違うので呼び出しに失敗する可能性が高いから
もっともmakeの関数も微妙に違うけどなw
unix系とDOS系で外部コマンドの仕様も挙動も違うので呼び出しに失敗する可能性が高いから
もっともmakeの関数も微妙に違うけどなw
798デフォルトの名無しさん (スッププ Sd33-1u7h)
2023/03/24(金) 12:34:44.06ID:Z+lkBBvAd799デフォルトの名無しさん (ワッチョイ eb63-F0re)
2023/03/24(金) 16:39:40.70ID:jOUoDADO0 君の人生は三枚分くらいだ
800デフォルトの名無しさん (スッップ Sd62-gKT6)
2023/03/25(土) 13:09:54.16ID:LtI+pZf0d DOS用にリメイクしたのがNMAKE
801デフォルトの名無しさん (アウアウウー Saa5-tUaT)
2023/03/28(火) 17:18:26.98ID:hvNFNzxEa NMAKEとnmakeは別物
CMAKEとcmakeも別物
CMAKEとcmakeも別物
802デフォルトの名無しさん (ワッチョイ e510-uluY)
2023/03/28(火) 21:32:09.46ID:b9xJHTM00 NMAKEとnmakeって区別つくのか?
803デフォルトの名無しさん (ワッチョイ 792c-48Tb)
2023/03/29(水) 01:50:54.12ID:SUmt67gz0 言われてみればひつまぶしとひまつぶしとか区別難しいよね。
804デフォルトの名無しさん (ワッチョイ 869a-Uw/N)
2023/03/29(水) 06:33:27.98ID:/YP4UcCE0 なおざりとおざなりとか
805デフォルトの名無しさん (ワッチョイ 2e46-4NaH)
2023/03/29(水) 07:35:43.16ID:aVGT5NH20 K&RとK&K缶つまは区別が難しい。
806デフォルトの名無しさん (ワッチョイ 4d63-QuRV)
2023/03/29(水) 08:00:28.55ID:KlLOEDO70 ビットAND
807デフォルトの名無しさん (スッププ Sdd6-wCIk)
2023/03/29(水) 10:38:44.75ID:i2Cmbqbld >>802
UNIXのファイル名は大文字小文字を区別する
UNIXのファイル名は大文字小文字を区別する
808デフォルトの名無しさん (スッップ Sd62-gKT6)
2023/03/29(水) 10:52:21.31ID:G1cQpJHKd UNIX版のNMAKEってあるの?
809デフォルトの名無しさん (スッップ Sd62-hP/J)
2023/03/29(水) 19:37:12.44ID:UTBm5KT2d コンパイルすること
ウニツクスにできないことは「出来ましえーん」と言う言葉
ウニツクスにできないことは「出来ましえーん」と言う言葉
810デフォルトの名無しさん (スッップ Sd62-gKT6)
2023/03/29(水) 19:37:56.22ID:A5Sld2vWd ユニクズ
811デフォルトの名無しさん (スッププ Sdd6-wCIk)
2023/03/29(水) 21:42:59.38ID:lgv9dsNdd UNIXがクズというならC言語使うなよw
812デフォルトの名無しさん (ワッチョイ 4d63-QuRV)
2023/03/29(水) 21:45:20.51ID:KlLOEDO70 Multics -> Unics -> UNIX
813デフォルトの名無しさん (ワッチョイ 2e63-3uzD)
2023/03/29(水) 21:53:54.36ID:IqGKKWkZ0 昔リモートでろ具インする際に、迂闊にもユーザー名を大文字で入力してしまったことがあったが
そのまま通してくれたが、その端末の入力文字が全て大文字で扱われてしまったw
そのまま通してくれたが、その端末の入力文字が全て大文字で扱われてしまったw
814デフォルトの名無しさん (ワッチョイ 5902-hP/J)
2023/03/31(金) 05:41:00.80ID:oqvq/yKq0 そんな仕様ってあったっけ?
815デフォルトの名無しさん (ワッチョイ e510-uluY)
2023/03/31(金) 07:47:26.16ID:qPx00nGL0 もしかしたらULTRIXの独自仕様かな?
816デフォルトの名無しさん (ワッチョイ 4910-3uzD)
2023/03/31(金) 07:53:00.14ID:FWT7xs5+0 昔FreeBSDかなんかで入力ミスでファイル名が空白入りだか通常ファイル名に使用できないはずの文字が使われて消すのに難儀した記憶があるなぁ。
"で囲って解決できたけど、UNIX歴1年(+大学のFortran 講義4年)の若造にはすぐに思いつかんかった。
"で囲って解決できたけど、UNIX歴1年(+大学のFortran 講義4年)の若造にはすぐに思いつかんかった。
817デフォルトの名無しさん (ワッチョイ 4d63-QuRV)
2023/03/31(金) 09:44:55.95ID:RwPszGx50 remove()を使うって発想もなかったん?
818デフォルトの名無しさん (ワッチョイ 2e63-3uzD)
2023/03/31(金) 10:06:11.78ID:ZGSDW47D0 以前の職場、頭に”-”付いたファイルがよく放置されてたな
819デフォルトの名無しさん (アウアウウー Saa5-3uzD)
2023/03/31(金) 12:22:34.54ID:EpaLX3NUa getopt()の仕様がわかってないと削除できないやつね
820デフォルトの名無しさん (スップ Sdc2-BuZC)
2023/03/31(金) 16:04:12.84ID:VmvJgfTvd -rfという名前のファイル置いときますね
821デフォルトの名無しさん (スッププ Sdd6-wCIk)
2023/03/31(金) 16:20:13.87ID:N/uv7Ri4d *で全部消える
822デフォルトの名無しさん (ワッチョイ ff9a-Pd8U)
2023/04/01(土) 04:36:47.77ID:TiOY9/eM0823デフォルトの名無しさん (ワッチョイ 5fda-DgoB)
2023/04/01(土) 08:01:57.89ID:JdkGmPlI0 >>786
手順が2⁶⁴-1回なだけで2⁶⁴段スタックがたまるわけじゃないぞ?
手順が2⁶⁴-1回なだけで2⁶⁴段スタックがたまるわけじゃないぞ?
824デフォルトの名無しさん
2023/04/01(土) 08:28:02.36ID:RFr3BRPJ0 その手順ごとに自身が呼ばれるから64回の再帰ってことじゃないの?
825デフォルトの名無しさん (ワッチョイ ffda-no2l)
2023/04/02(日) 05:17:00.30ID:raeheLh20826デフォルトの名無しさん (ワッチョイ 7ffb-Z8D1)
2023/04/02(日) 05:25:52.58ID:t6gv1L3z0 この手のスタックに積まれるのが最大になるタイミングって実装依存になるような気がするが
俺の場合だと1番上に置いてある最初の1枚を動かすタイミングでスタックに64段積まれる
俺の場合だと1番上に置いてある最初の1枚を動かすタイミングでスタックに64段積まれる
827デフォルトの名無しさん (スッププ Sd8f-Yz/h)
2023/04/02(日) 09:45:46.28ID:NRuCP2qfd >>786
2^64回ではなくて64!回じゃないのか?
2^64回ではなくて64!回じゃないのか?
828デフォルトの名無しさん (ラクッペペ MM4f-+zBY)
2023/04/02(日) 10:09:18.45ID:tfS01X/KM >>827
正確には、最短で(2^64-1)回
1枚 1回
2枚 3回
3枚 7回
4枚 15回
・・・
n枚 (2^n-1)回
考え方としては、1回前までの円盤を一時的に順に積み上げて最後の1枚を目標に移動し
その後その円盤の上に全く同じ手順で直前までの手順を復元する
要するに、n枚の時の回数をA(n)回とすると、(n+1)枚の時の回数はA(n+1)=A(n)*2+1
この漸化式の一般解を求めると上の回数になる
その結果、繰返し回数の見積りは
O(n)=2^n
となる
正確には、最短で(2^64-1)回
1枚 1回
2枚 3回
3枚 7回
4枚 15回
・・・
n枚 (2^n-1)回
考え方としては、1回前までの円盤を一時的に順に積み上げて最後の1枚を目標に移動し
その後その円盤の上に全く同じ手順で直前までの手順を復元する
要するに、n枚の時の回数をA(n)回とすると、(n+1)枚の時の回数はA(n+1)=A(n)*2+1
この漸化式の一般解を求めると上の回数になる
その結果、繰返し回数の見積りは
O(n)=2^n
となる
829デフォルトの名無しさん (スッププ Sd8f-Yz/h)
2023/04/02(日) 10:39:38.37ID:NRuCP2qfd いや一枚動かすごとに再帰呼び出す必要ない
n枚動かすならパラメータをn-1枚にして自分自身を再帰呼び出し
そうしてn=1になればもう呼び出す必要はない
結果的にスタックはn段で足りる
再帰呼び出しの利点はまさにそれだから
n枚動かすならパラメータをn-1枚にして自分自身を再帰呼び出し
そうしてn=1になればもう呼び出す必要はない
結果的にスタックはn段で足りる
再帰呼び出しの利点はまさにそれだから
830デフォルトの名無しさん (ワッチョイ ff63-kVuH)
2023/04/02(日) 10:39:44.95ID:vuecyBii0 俺の頭は3枚のスタックで溢れる
831デフォルトの名無しさん (スッップ Sd9f-V10A)
2023/04/03(月) 07:29:00.64ID:LcmFFSdCd 難しいニダ
832デフォルトの名無しさん (ササクッテロロ Sp33-W4em)
2023/04/03(月) 10:36:24.87ID:rxZSmkg/p リカーシブル禁止な
833デフォルトの名無しさん (ワッチョイ dfc9-Cn9/)
2023/04/03(月) 10:54:13.61ID:amgtJnTb0834デフォルトの名無しさん (ワッチョイ dfc9-Cn9/)
2023/04/03(月) 11:17:01.50ID:amgtJnTb0 すまね n == 1 でデクリメントしてないがな
835デフォルトの名無しさん (ワッチョイ dfc9-Cn9/)
2023/04/03(月) 11:20:49.83ID:amgtJnTb0836デフォルトの名無しさん (ワッチョイ 7f79-u6c4)
2023/04/03(月) 19:50:55.17ID:FTaZkaBO0 (いつまでこの話題続けるんだろう・・・)
837デフォルトの名無しさん (ワッチョイ ff63-kVuH)
2023/04/03(月) 20:00:28.42ID:GTpIFgvQ0 ただいま32個目のスタックに到達
838デフォルトの名無しさん (ワッチョイ a9b3-udcE)
2023/04/08(土) 20:36:00.74ID:SFpZqjEH0 なんか、
for(size_t i=0...
と書く人いません?
for(int i=0ではなくsize_tを使う意味はなんでしょうか?
for(size_t i=0...
と書く人いません?
for(int i=0ではなくsize_tを使う意味はなんでしょうか?
839デフォルトの名無しさん (ワッチョイ a169-/aea)
2023/04/08(土) 20:53:31.67ID:wgIhukY00 strlen()やsizeofはsize_tなんだわこれが
840蟻人間 ◆T6xkBnTXz7B0 (スフッ Sd22-6PIS)
2023/04/08(土) 20:55:09.41ID:3OtdrBzyd size_tはintよりサイズが大きいかも知れないし、符号なし整数なんだよね。
841デフォルトの名無しさん (ワッチョイ bd02-oFYy)
2023/04/08(土) 21:16:04.49ID:rjC7aYJI0 そのiを主にsize_tとして使う用があるから
もし質問がsize_tとして使う用がないのにiをsize_tにするのか?ということなら、そう書いて
もし質問がsize_tとして使う用がないのにiをsize_tにするのか?ということなら、そう書いて
842デフォルトの名無しさん (ワッチョイ 6ecf-Rzwh)
2023/04/08(土) 21:21:03.16ID:tM+hyW0O0 >>838
Cにおいて自然数で表されるべきものには全てsize_tを使うべきだと信じてる人達が一定数いる
大きさ、長さ、個数、順番、回数なんかが該当し、そこにはループカウンタも含まれる
意味の問題ではなく教義や主義の問題なんで、自分の考えと違うコードを見かけてもそういうもんだで済ますのがいい
Cにおいて自然数で表されるべきものには全てsize_tを使うべきだと信じてる人達が一定数いる
大きさ、長さ、個数、順番、回数なんかが該当し、そこにはループカウンタも含まれる
意味の問題ではなく教義や主義の問題なんで、自分の考えと違うコードを見かけてもそういうもんだで済ますのがいい
843デフォルトの名無しさん (ワッチョイ 495f-MO2j)
2023/04/08(土) 21:22:33.45ID:9tIz9OW00 ほとんどの場合はどっちでもいいかと
844デフォルトの名無しさん (アウアウウー Sa05-Ay2p)
2023/04/08(土) 21:37:43.61ID:vkc2i7uPa size_t と off_t ぐらいは使えよ
845デフォルトの名無しさん (ワッチョイ 0279-90pI)
2023/04/08(土) 21:42:59.63ID:ymsLMaB30 終端ヌル文字列の長さが符号ビット分まであったらそれは異常ではなかろうか
オンメモリで処理できるデータじゃないから見直すべき
オンメモリで処理できるデータじゃないから見直すべき
846デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/08(土) 22:47:03.50ID:iv8dl0Z8M847デフォルトの名無しさん (ワッチョイ 424b-jq58)
2023/04/09(日) 01:33:51.48ID:hSdkmotY0 2.2GBのテキストファイル
848デフォルトの名無しさん (スッププ Sd22-QGEt)
2023/04/09(日) 09:21:07.72ID:J2NWn1GHd849デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/09(日) 10:02:17.83ID:mGUCWnYwM >>848
100Bだろうが4GBだろうが、テキストファイルをロードする時にはゼロ終端文字列にするだろ
それをstrlenするかどうかは俺の知ったことではない
4GBのゼロ終端文字列が異常ではないというだけだ
100Bだろうが4GBだろうが、テキストファイルをロードする時にはゼロ終端文字列にするだろ
それをstrlenするかどうかは俺の知ったことではない
4GBのゼロ終端文字列が異常ではないというだけだ
850デフォルトの名無しさん (アウアウウー Sa05-l3hZ)
2023/04/09(日) 10:03:11.35ID:Lsx68Nkda ファイルから読むこんで文字列処理する場合とかINT_MAXサイズ以上になる可能性もあるけどINT_MAXの範囲までしか処理しちゃいけないの?
851デフォルトの名無しさん (ワッチョイ 495f-MO2j)
2023/04/09(日) 10:23:33.31ID:S22RS/pW0 シークしなよ
852デフォルトの名無しさん (アウアウウー Sa05-l3hZ)
2023/04/09(日) 10:29:43.09ID:Mq6Pc04Ma 一方向のみに進むだけならシークでいいけど、対応する値を探したりするには場所情報もいるから
853デフォルトの名無しさん (スッププ Sd22-QGEt)
2023/04/09(日) 10:55:25.78ID:SXWU02gid854デフォルトの名無しさん (アウアウウー Sa05-l3hZ)
2023/04/09(日) 11:20:12.19ID:JaCyVsO8a その場所情報を残すためにintじゃ足りないから大きな型を使ったりするけど
シークじゃ戻って対象の文字列の間の処理を再起やってまた進んでってのが面倒くさい
シークじゃ戻って対象の文字列の間の処理を再起やってまた進んでってのが面倒くさい
855デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/09(日) 11:36:10.69ID:aX3VhQL60 面倒くさがる人はプログラムに向いていません
856デフォルトの名無しさん (アウアウウー Sa05-l3hZ)
2023/04/09(日) 11:49:17.45ID:K99TBVjYa やりやすい方法があるのに複雑にして分かりにくくするのがプログラマーならプログラマーじゃなくていいや
857デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/09(日) 12:08:18.91ID:aX3VhQL60 あるならそれを使えば良いだろ
相談するまでもない
相談するまでもない
858デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/09(日) 12:24:20.87ID:mGUCWnYwM >>853
LoadTextFile()っていう関数を作ったら戻り値は何だ?
const char*だろ
ゼロ終端文字列が返ると思うだろ
もちろん追加でサイズも引数経由で返しても良い
悔しいからって屁理屈をこねるな
LoadTextFile()っていう関数を作ったら戻り値は何だ?
const char*だろ
ゼロ終端文字列が返ると思うだろ
もちろん追加でサイズも引数経由で返しても良い
悔しいからって屁理屈をこねるな
859デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/09(日) 12:31:45.31ID:kBYq2/2r0 >>853
mainは第1引数がサイズで、第2引数の指す先はNULL終端されてるね
mainは第1引数がサイズで、第2引数の指す先はNULL終端されてるね
860デフォルトの名無しさん (スッププ Sd22-QGEt)
2023/04/09(日) 13:05:09.35ID:bTpPccPGd >>858
例えば
終端に移動するとき
サイズと比較して超えていたらエラーか終端に切り詰める
データを追加する場合
終端まで移動
こういった普通の作業するのにいちいちstrlenを呼び出すとかありえないからサイズはどこかに保持する必要がある
よって終端記号はムダだよ
例えば
終端に移動するとき
サイズと比較して超えていたらエラーか終端に切り詰める
データを追加する場合
終端まで移動
こういった普通の作業するのにいちいちstrlenを呼び出すとかありえないからサイズはどこかに保持する必要がある
よって終端記号はムダだよ
861デフォルトの名無しさん (スッップ Sd22-VdbI)
2023/04/09(日) 13:39:50.90ID:8g05NYDAd862デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/09(日) 14:32:05.77ID:FxGMQKOnM >>860
strlenを使うかどうかは関知しないと言ってるだろ
それでもゼロ終端文字列を返すんだよ
それがC言語のプロトコルだ
1byteケチって何がしたいんだよw
だから屁理屈をこねるなと言ってる
strlenを使うかどうかは関知しないと言ってるだろ
それでもゼロ終端文字列を返すんだよ
それがC言語のプロトコルだ
1byteケチって何がしたいんだよw
だから屁理屈をこねるなと言ってる
863デフォルトの名無しさん (エムゾネ FF22-QGEt)
2023/04/09(日) 14:42:47.16ID:LpKuKnylF864デフォルトの名無しさん (エムゾネ FF22-QGEt)
2023/04/09(日) 14:44:30.71ID:LpKuKnylF >>859
mainの第一引数はargvの個数であってサイズじゃないよ
mainの第一引数はargvの個数であってサイズじゃないよ
865デフォルトの名無しさん
2023/04/09(日) 15:09:35.01ID:zFNH8tsS0 >こういった普通の作業するのにいちいちstrlenを呼び出すとかありえないからサイズはどこかに保持する必要がある
“こういった普通の作業”をしない場合はstrlenで良いってことだろ?
なんでもかんでもstrlenを使うって話じゃないし
なんでもかんでもサイズはどこかに保持する必要があるわけじゃなくて
用途に合わせて使い分けるのがプログラマーじゃないの?
“こういった普通の作業”をしない場合はstrlenで良いってことだろ?
なんでもかんでもstrlenを使うって話じゃないし
なんでもかんでもサイズはどこかに保持する必要があるわけじゃなくて
用途に合わせて使い分けるのがプログラマーじゃないの?
866デフォルトの名無しさん (ワッチョイ 495f-MO2j)
2023/04/09(日) 15:13:43.40ID:S22RS/pW0 小生はゴミを分別できるプログラマーになりたい
867デフォルトの名無しさん
2023/04/09(日) 15:20:34.92ID:zFNH8tsS0 いちいちstrlenを呼び出す、と言っているけど
ゼロ終端文字列を返す関数はあるしゼロ終端文字列からサイズを得るためstrlenは呼び出すよね?
その後は処理を高速にするためにそのサイズを維持しつつというのはあると思うよ
けどその後呼び出す文字列処理関数があるとして、その関数が削除した文字数や追加した文字数を返してくれるとは限らないわけで
その場合、その都度strlenを呼び出さなきゃいけない場合もあり得るよね?
それぞれが想定する状況がかみ合っていないだけとも思うんだけどね
結局自分が想定する状況なら自分の意見が良い言っているだけで、じゃあ相手の言う状況でも自分の言っているのが正しいかということ自体を否定しているわけではないでしょ?
ゼロ終端文字列を返す関数はあるしゼロ終端文字列からサイズを得るためstrlenは呼び出すよね?
その後は処理を高速にするためにそのサイズを維持しつつというのはあると思うよ
けどその後呼び出す文字列処理関数があるとして、その関数が削除した文字数や追加した文字数を返してくれるとは限らないわけで
その場合、その都度strlenを呼び出さなきゃいけない場合もあり得るよね?
それぞれが想定する状況がかみ合っていないだけとも思うんだけどね
結局自分が想定する状況なら自分の意見が良い言っているだけで、じゃあ相手の言う状況でも自分の言っているのが正しいかということ自体を否定しているわけではないでしょ?
868デフォルトの名無しさん
2023/04/09(日) 15:21:53.57ID:zFNH8tsS0 最後変だわ
×結局自分が想定する状況なら自分の意見が良い言っているだけで、じゃあ相手の言う状況でも自分の言っているのが正しいかということ自体を否定しているわけではないでしょ?
〇結局自分が想定する状況なら自分の意見が良い言っているだけで、じゃあ相手の言う状況でも自分の言っているのが正しいと言いたいわけではないでしょ?
×結局自分が想定する状況なら自分の意見が良い言っているだけで、じゃあ相手の言う状況でも自分の言っているのが正しいかということ自体を否定しているわけではないでしょ?
〇結局自分が想定する状況なら自分の意見が良い言っているだけで、じゃあ相手の言う状況でも自分の言っているのが正しいと言いたいわけではないでしょ?
869デフォルトの名無しさん (ワッチョイ 495f-MO2j)
2023/04/09(日) 16:50:03.25ID:S22RS/pW0 小生だって燃えないゴミを燃えるゴミと言いたいわけじゃないさ
870デフォルトの名無しさん (ワッチョイ 0279-90pI)
2023/04/09(日) 18:08:42.61ID:I9Qf3W7D0 環境商法は嘘でも乗っからないと文句言われるからつれーよな
871デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/09(日) 18:17:37.00ID:aX3VhQL60 同じプラスティックを、燃えるゴミ、燃えないゴミ、分別込み、どれで出してもOKらしい
あれはやってますアピールなんだとか
あれはやってますアピールなんだとか
872デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/09(日) 18:24:47.66ID:aX3VhQL60 分別よりも、粗大ゴミ、家電ゴミなどの有料ゴミは厳格に扱われる
迂闊に持ち帰ると大目玉食らうらしい
迂闊に持ち帰ると大目玉食らうらしい
873デフォルトの名無しさん
2023/04/09(日) 18:45:27.28ID:zFNH8tsS0 問題があるからそうしているわけじゃなくて限りある資源をリサイクルだからそうしている
「どれで出してもOKらしい」と言うのは論点が間違ってる
あと指定された場所にあるゴミは所有権の放棄じゃなくて自治体への譲渡みたいなモノだから持ち帰りは窃盗になる
「どれで出してもOKらしい」と言うのは論点が間違ってる
あと指定された場所にあるゴミは所有権の放棄じゃなくて自治体への譲渡みたいなモノだから持ち帰りは窃盗になる
874デフォルトの名無しさん (ラクッペペ MM66-DefY)
2023/04/09(日) 18:45:49.74ID:qh8VxmjLM 条例と法令の違い
875デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/09(日) 18:49:28.88ID:aX3VhQL60 いや実際そうだぞ
汚れているプラスティックを分別ゴミに混ぜられると迷惑なんだそうだ
洗剤でゴシゴシ洗って綺麗にしてから出せだとさ
汚れているプラスティックを分別ゴミに混ぜられると迷惑なんだそうだ
洗剤でゴシゴシ洗って綺麗にしてから出せだとさ
876デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/09(日) 18:51:41.97ID:aX3VhQL60 実際PETボトルは回収しても資源として再利用するのに手間が掛かる
だから、飲料メーカーもPETからアルミ容器に切り替えている
アルミはリサイクルが簡単なんだそうだ
だから、飲料メーカーもPETからアルミ容器に切り替えている
アルミはリサイクルが簡単なんだそうだ
877デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/09(日) 19:02:34.53ID:aX3VhQL60 迂闊に持ち帰ると大目玉、はゴミ収集業者の話な
878デフォルトの名無しさん (ワッチョイ 0279-90pI)
2023/04/09(日) 19:07:33.05ID:I9Qf3W7D0 基本リサイクルはコスト的にデメリットしかない
一部ではやってますよアピールをしつつ、大半は分別したのをわざわざまとめて燃やしたり他所に押し付けるのが現実
環境商法は理想アピールとかけ離れた現実が弱みになって反社が入り込みやすいジャンルになってるから関わると危険だよ
一部ではやってますよアピールをしつつ、大半は分別したのをわざわざまとめて燃やしたり他所に押し付けるのが現実
環境商法は理想アピールとかけ離れた現実が弱みになって反社が入り込みやすいジャンルになってるから関わると危険だよ
879デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/09(日) 19:12:09.18ID:ONc2duBhM880デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/09(日) 19:15:10.49ID:ONc2duBhM 文字列とストリームの区別が付いてないアホに付き合わないといけないとはな…
そういう奴のコードはバグだらけだろうなw
そういう奴のコードはバグだらけだろうなw
881デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/09(日) 19:22:58.30ID:ONc2duBhM ま、Cの文字列はバグり易いのは間違いないがな
特にmmapを使うと悲劇が起こりやすい
なのでテキストファイルの読み込みには、LoadTextFileの様な明確な名前を付けて専用に用意するのが常套手段
もちろんゼロ終端文字列を返す
特にmmapを使うと悲劇が起こりやすい
なのでテキストファイルの読み込みには、LoadTextFileの様な明確な名前を付けて専用に用意するのが常套手段
もちろんゼロ終端文字列を返す
882デフォルトの名無しさん (スッップ Sd22-VdbI)
2023/04/09(日) 19:27:24.15ID:8g05NYDAd strlenとか使う馬鹿がいるのか
ラベル低すぎ
ラベル低すぎ
883デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/09(日) 20:52:59.04ID:ONc2duBhM Linux Kernelでも使われてるけど、ラベル低すぎとは知らなかったw
884デフォルトの名無しさん (ワッチョイ b902-VdbI)
2023/04/09(日) 23:27:25.54ID:rzCgDpP30 strlen strcpy strcatのストラ三兄弟は使うな
普通はマクロ定義でスピードアップ
普通はマクロ定義でスピードアップ
885デフォルトの名無しさん (ワッチョイ 6ecf-Rzwh)
2023/04/10(月) 00:09:17.40ID:IbkX37li0 どんなマクロなんだい
886デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/10(月) 05:24:42.66ID:hibmPNuj0887デフォルトの名無しさん (スッププ Sd22-QGEt)
2023/04/11(火) 00:17:24.82ID:KrSp3HQhd888デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/11(火) 02:28:47.80ID:MidqBNVpM889デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/11(火) 06:49:02.21ID:dFL5vcfn0 >>887
訂正ってどこ? 具体的なレス番plz
訂正ってどこ? 具体的なレス番plz
890デフォルトの名無しさん (ワッチョイ a910-Ay2p)
2023/04/11(火) 07:47:26.88ID:lpXrKUt40 Cを捨ててCStringを使うC++へ行けってことだろ。
891デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/11(火) 08:08:42.83ID:dFL5vcfn0 std::stringではなくCStringな変人きたな
892デフォルトの名無しさん (スッップ Sd22-QGEt)
2023/04/11(火) 08:55:39.31ID:ozkx3imqd893デフォルトの名無しさん (ワッチョイ 495f-/aea)
2023/04/11(火) 09:23:43.71ID:Q4R/j+cb0 >>859 の言ってるのは argv[argc] == NULL となる規定のことでしょ。
それ自体は正しいので訂正することも無い。
それ自体は正しいので訂正することも無い。
894デフォルトの名無しさん (ワッチョイ 495f-MO2j)
2023/04/11(火) 09:41:53.28ID:7OwUdYTT0 MFCに帰ろう
895デフォルトの名無しさん (スッップ Sd22-QGEt)
2023/04/11(火) 09:52:04.87ID:ozkx3imqd896デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/11(火) 15:56:45.30ID:dFL5vcfn0897デフォルトの名無しさん (ワッチョイ 495f-MO2j)
2023/04/11(火) 19:04:39.28ID:7OwUdYTT0 小生は文字列の長さを表すとき、strlenに習ってlengthという語を用いますん
898デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/11(火) 19:20:48.37ID:1aMyTP0X0 文字列サイズなんて聞くと、配列要素数かと受け取ってしまう
899デフォルトの名無しさん (スッップ Sd22-QGEt)
2023/04/11(火) 19:50:55.63ID:ozkx3imqd900デフォルトの名無しさん
2023/04/11(火) 20:01:03.76ID:eL0kPSHK0 文字列長
文字の長さ
文字列の長さ
長さ
文字の長さ
文字列の長さ
長さ
901デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/11(火) 20:41:17.09ID:1aMyTP0X0 あと、文字数というのも入れてあげて
902デフォルトの名無しさん (ワッチョイ 02ad-Ay2p)
2023/04/12(水) 02:49:44.30ID:1sJZVfCp0 文字の長さ 3m
重さ 5kg
重さ 5kg
903デフォルトの名無しさん (ワッチョイ 02ad-Ay2p)
2023/04/12(水) 02:52:08.54ID:1sJZVfCp0904デフォルトの名無しさん (ワッチョイ 02ad-Ay2p)
2023/04/12(水) 02:53:14.30ID:1sJZVfCp0 とても長くて太くて大きくて重そう
905デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/12(水) 06:48:43.44ID:NgkNjGWQ0 >>899
それってあなたの感想ですよね
それってあなたの感想ですよね
906デフォルトの名無しさん (ワッチョイ bd02-oFYy)
2023/04/12(水) 08:59:58.23ID:HQz+hF5G0 もうそれ秋田
907デフォルトの名無しさん (アウアウウー Sa05-9cWA)
2023/04/12(水) 11:42:14.25ID:+8HledSTa 0終端の良い所は可変長でどんなに長い文字列でもメモリが許す限り文字列を続けられる
もちろんデメリットは長さがすぐに判らない
逆に長さを持って struct {size_t len; char hoge[0]} Str; みたいな構成にするのもありだが
例えば Str *s = (Str *)malloc(len + sizeof(Str)); で確保して使う
後者のデメリットは size_t len の最大値までしか文字を格納出来ないこと
struct {short len; char hoge[0]} Str; みたいな実装もたまに観るからあなどれない
もちろんデメリットは長さがすぐに判らない
逆に長さを持って struct {size_t len; char hoge[0]} Str; みたいな構成にするのもありだが
例えば Str *s = (Str *)malloc(len + sizeof(Str)); で確保して使う
後者のデメリットは size_t len の最大値までしか文字を格納出来ないこと
struct {short len; char hoge[0]} Str; みたいな実装もたまに観るからあなどれない
908デフォルトの名無しさん (アウアウウー Sa05-9cWA)
2023/04/12(水) 11:51:49.32ID:+8HledSTa >>838
C++だと
vector の size() が size_t を還して
for(int i = 0; i < v.size(); ++i)
って描くと警告出るので
for(int i = 0; i < (int)v.size(); ++i)
にするとさらに警告出て鬱陶しいから
for(size_t i = 0; i < v.size(); ++i)
にするアホな例はよく観るってどっかのサイトに描いてあった
C++だと
vector の size() が size_t を還して
for(int i = 0; i < v.size(); ++i)
って描くと警告出るので
for(int i = 0; i < (int)v.size(); ++i)
にするとさらに警告出て鬱陶しいから
for(size_t i = 0; i < v.size(); ++i)
にするアホな例はよく観るってどっかのサイトに描いてあった
909デフォルトの名無しさん (テテンテンテン MM66-xOzU)
2023/04/12(水) 12:32:16.29ID:81IdaWl4M C++ならイテレーター使えよ…
910デフォルトの名無しさん (ワッチョイ 495f-cPl8)
2023/04/12(水) 12:42:43.03ID:Q+QfGKpq0 vectorはランダムアクセスがウリだからイテレータ使わないこともよくあるね
911デフォルトの名無しさん (スプープ Sd82-VdbI)
2023/04/12(水) 13:01:34.03ID:N6w93SJGd >>899
「文字列の終端までの長さ」ですが何か?
「文字列の終端までの長さ」ですが何か?
912デフォルトの名無しさん (ワッチョイ c5c9-hq/O)
2023/04/12(水) 13:23:26.32ID:3jp3M04i0 (文字列の)文字数
913デフォルトの名無しさん (ワッチョイ c69a-gTA8)
2023/04/12(水) 13:42:24.69ID:dS1BcMQZ0 >>909
コードによってはインデックスでアクセスしたいこともあるから...
コードによってはインデックスでアクセスしたいこともあるから...
914デフォルトの名無しさん (アウアウウー Sa05-Ay2p)
2023/04/12(水) 13:57:15.96ID:gJHWYvs7a 「アホな例」と書く意味が分からん
ちゃん型を使うべきだろ
ちゃん型を使うべきだろ
915デフォルトの名無しさん (アウアウウー Sa05-Ay2p)
2023/04/12(水) 13:57:40.50ID:gJHWYvs7a ちゃんと型を使うべきだろ
916デフォルトの名無しさん (アウアウウー Sa05-Ay2p)
2023/04/12(水) 13:59:47.55ID:gJHWYvs7a そもそも「アホな例」じゃないとLP64でおかしなことになるよね
917デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/12(水) 14:05:32.31ID:NgkNjGWQ0 struct X;
void func(struct X[]); //error
struct Y { int a; };
void func(struct Y[]); //ok
不完全型の場合、仮引数の[]はポインタにならない??
ちな、gccではエラー、clでは通る
void func(struct X[]); //error
struct Y { int a; };
void func(struct Y[]); //ok
不完全型の場合、仮引数の[]はポインタにならない??
ちな、gccではエラー、clでは通る
918デフォルトの名無しさん (スップ Sd82-qF+M)
2023/04/12(水) 14:17:34.62ID:mayblUPzd C++だと通ったね
gcc/clangのCだとX[]は許されないけどX*は許される
関数宣言より前にX型の定義がないとコンパイルが通らなかった
gcc/clangのCだとX[]は許されないけどX*は許される
関数宣言より前にX型の定義がないとコンパイルが通らなかった
919デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/12(水) 14:55:48.73ID:NgkNjGWQ0 どっちが正しいのかね
920デフォルトの名無しさん
2023/04/12(水) 15:04:32.82ID:219MxBT/0 >>907
馬鹿な私に少しだけアドバイスを
それってsize_tのビット幅 < システム(OS)のビット幅と言う条件下での話なんでしょうか?
size_tがシステム(OS)のビット幅と同じならメモリで管理できるものは必然的にsize_tでも表現できると思うのですが
メモリ上で管理できているゼロ終端文字列をsize_tで表現できない場合ってあるんですか?
まあ一部の組み込みとかならあるかも知れませんが……
けどそういう環境の場合strlenなどのsize_tで返す場合でも表現できなくなるわけで、結局size_tに依存することになってどっちでも同じじゃないかと思うんですがどうなんでしょうか?
馬鹿な私に少しだけアドバイスを
それってsize_tのビット幅 < システム(OS)のビット幅と言う条件下での話なんでしょうか?
size_tがシステム(OS)のビット幅と同じならメモリで管理できるものは必然的にsize_tでも表現できると思うのですが
メモリ上で管理できているゼロ終端文字列をsize_tで表現できない場合ってあるんですか?
まあ一部の組み込みとかならあるかも知れませんが……
けどそういう環境の場合strlenなどのsize_tで返す場合でも表現できなくなるわけで、結局size_tに依存することになってどっちでも同じじゃないかと思うんですがどうなんでしょうか?
921デフォルトの名無しさん (ワッチョイ 6ecf-Rzwh)
2023/04/12(水) 15:07:46.44ID:gccG0Jwg0922デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/12(水) 15:09:16.06ID:NgkNjGWQ0923デフォルトの名無しさん
2023/04/12(水) 15:15:29.08ID:219MxBT/0924デフォルトの名無しさん (ワッチョイ 412d-dXWb)
2023/04/12(水) 15:27:40.89ID:7SV2gFKB0 size_t が符号なし整数型
int が符号付き整数型
int が符号付き整数型
925デフォルトの名無しさん (ワッチョイ 6ecf-Rzwh)
2023/04/12(水) 15:34:06.47ID:gccG0Jwg0 >>922
はずだかなんだか知らねーけど、そんなことはどうでも良くてサイズの分からないオブジェクトの配列は作れんって言ってんだよ
操作上の違いはともかく配列として宣言したんなら関数内では配列として扱うってことを示唆してるわけだろ
仮にそのfuncだかって名前の関数の中にX[3]とかX+5って書かれたらどうやってアドレス出すんだってことよ
動作に違いがあるってことは規格がそれを許してる箇所なんだろうけど弾いてる処理系はそういう考えなんだろう
はずだかなんだか知らねーけど、そんなことはどうでも良くてサイズの分からないオブジェクトの配列は作れんって言ってんだよ
操作上の違いはともかく配列として宣言したんなら関数内では配列として扱うってことを示唆してるわけだろ
仮にそのfuncだかって名前の関数の中にX[3]とかX+5って書かれたらどうやってアドレス出すんだってことよ
動作に違いがあるってことは規格がそれを許してる箇所なんだろうけど弾いてる処理系はそういう考えなんだろう
926デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/12(水) 15:53:08.00ID:NgkNjGWQ0927デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/12(水) 15:53:49.38ID:NgkNjGWQ0 > 規格は知らんけど
この時点で気付くべきだった
この時点で気付くべきだった
928デフォルトの名無しさん (ワッチョイ a910-Ay2p)
2023/04/12(水) 15:55:21.15ID:1mphmeyq0 Cはアセンブラの代用言語。
929はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 423e-/aea)
2023/04/12(水) 16:36:09.61ID:bThMVtxz0 >>917
規格的には (関数定義の一部ではない) 宣言の段階なら不完全型であることを許しているように読める。
C99 だと 6.7.5.3 の第 12 段落に書かれている。
> If the function declarator is not part of a definition of that function,
> parameters may have incomplete type and may use the [*] notation in their sequences of
> declarator specifiers to specify variable length array types.
> 関数宣言子が関数定義の一部ではない場合,仮引数の型は不完全型でもよく,
> また宣言指定子列に [*] を使って可変長配列型を指定してもよい。
ちなみに GCC だと以下のようなものもエラーだが MSVC だと通る。
struct X;
typedef struct X Y[10];
規格的には (関数定義の一部ではない) 宣言の段階なら不完全型であることを許しているように読める。
C99 だと 6.7.5.3 の第 12 段落に書かれている。
> If the function declarator is not part of a definition of that function,
> parameters may have incomplete type and may use the [*] notation in their sequences of
> declarator specifiers to specify variable length array types.
> 関数宣言子が関数定義の一部ではない場合,仮引数の型は不完全型でもよく,
> また宣言指定子列に [*] を使って可変長配列型を指定してもよい。
ちなみに GCC だと以下のようなものもエラーだが MSVC だと通る。
struct X;
typedef struct X Y[10];
930デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/12(水) 16:59:41.80ID:NgkNjGWQ0931デフォルトの名無しさん (ワッチョイ 495f-/aea)
2023/04/12(水) 23:57:31.43ID:ysjFLZAD0 >>917
Cではエラーになるのが規格準拠の動作。
ただし宣言の形式を変えるだけで通る理不尽な制約でありC++では許されるように改められている。
https://stackoverflow.com/questions/50503501/an-error-about-c-struct-array-in-formal-parameter
Cではエラーになるのが規格準拠の動作。
ただし宣言の形式を変えるだけで通る理不尽な制約でありC++では許されるように改められている。
https://stackoverflow.com/questions/50503501/an-error-about-c-struct-array-in-formal-parameter
932はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 423e-/aea)
2023/04/13(木) 00:37:34.59ID:y5cvZaYN0 >>931
そこでも言及されてるけど
型調整 (配列がポインタに読み替えられる) が優先されるか配列宣言子としての解釈が優先されるかって曖昧じゃない?
読み替えより先に配列宣言子として解釈すべきと確信できるような記述ってある?
常識的には曖昧なら厳しい側の制約で解釈すべきだわなーとは思うけど陽には書かれてないように思う。
そこでも言及されてるけど
型調整 (配列がポインタに読み替えられる) が優先されるか配列宣言子としての解釈が優先されるかって曖昧じゃない?
読み替えより先に配列宣言子として解釈すべきと確信できるような記述ってある?
常識的には曖昧なら厳しい側の制約で解釈すべきだわなーとは思うけど陽には書かれてないように思う。
933デフォルトの名無しさん (ワッチョイ 02ad-Ay2p)
2023/04/13(木) 02:04:44.32ID:o3x890Fi0 >>907
昔々の PASCAL はそんな感じだったな。先頭1バイトに文字列のバイト数が入っていてその後に文字列がある。
当然それだと255バイトまでしか入らないのでもっと長い文字列を扱いたい時に苦しむことになる。
まあでも 8 bit とか 16 bit CPU のマイコンやパソコンにそういう高い要求は最初の頃はあまりなかったのでなんとかなっていた。
昔々の PASCAL はそんな感じだったな。先頭1バイトに文字列のバイト数が入っていてその後に文字列がある。
当然それだと255バイトまでしか入らないのでもっと長い文字列を扱いたい時に苦しむことになる。
まあでも 8 bit とか 16 bit CPU のマイコンやパソコンにそういう高い要求は最初の頃はあまりなかったのでなんとかなっていた。
934デフォルトの名無しさん (ワッチョイ 495f-/aea)
2023/04/13(木) 02:23:46.11ID:jklAk1E50 >>932
プログラム内に制約 (constraint) 違反がある状態なので、前後関係がどっちだろうと
少なくとも制約違反について診断メッセージを出力しないと規格準拠とは言えない。
> A conforming implementation shall produce at least one diagnostic message ...
> ... if a preprocessing translation unit or translation unit contains a violation
> of any syntax rule or constraint, ...
「通る」が警告も出ずプログラム実行までできる状態と解釈してたけど、
エラーにはならないものの警告が出ているならそれも規格準拠とは言えそう。
プログラム内に制約 (constraint) 違反がある状態なので、前後関係がどっちだろうと
少なくとも制約違反について診断メッセージを出力しないと規格準拠とは言えない。
> A conforming implementation shall produce at least one diagnostic message ...
> ... if a preprocessing translation unit or translation unit contains a violation
> of any syntax rule or constraint, ...
「通る」が警告も出ずプログラム実行までできる状態と解釈してたけど、
エラーにはならないものの警告が出ているならそれも規格準拠とは言えそう。
935デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/13(木) 08:28:10.40ID:zEEI4t8g0 https://www.open-std.org/jtc1/sc22/wg14/www/docs/dr_047.html
仮引数の[]は、一旦は配列として受理し、その後でポインタに調整されるってことか
仮引数の[]は、一旦は配列として受理し、その後でポインタに調整されるってことか
936デフォルトの名無しさん (ワッチョイ 2d63-r2C4)
2023/04/13(木) 08:28:50.25ID:zEEI4t8g0 VCで通るのは、VLAがないからってこと?
937デフォルトの名無しさん (スップ Sd82-VdbI)
2023/04/13(木) 23:35:55.91ID:DvwX4ZoKd 間違ってる
938デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/13(木) 23:48:57.98ID:wWKtbXV/0 マスク無死でラーメン食いたい奴は、まず住所を書いて見てよ
その場所にノーマスクで食えるラーメン屋作らないといけないんだろ?
政府が作るのかな?
その場所にノーマスクで食えるラーメン屋作らないといけないんだろ?
政府が作るのかな?
939デフォルトの名無しさん (ワッチョイ 6e63-Ay2p)
2023/04/13(木) 23:55:11.99ID:wWKtbXV/0 ごめん、誤爆
940デフォルトの名無しさん (ワッチョイ 02ad-Ay2p)
2023/04/13(木) 23:55:19.80ID:o3x890Fi0 はあ
941デフォルトの名無しさん (ワッチョイ 424b-jq58)
2023/04/14(金) 01:01:11.22ID:E99e4anP0 そのキモいレスをどこで発表するつもりだったのか
最近のLANカードで他力給電のものばかりのようですね、クロスケーブルでピアツーピアできるPCIe のカードって存在しないものですかね…
結局 hub を使っちまった、もったいないなあ
結局 hub を使っちまった、もったいないなあ
944はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5f3e-S3w6)
2023/04/16(日) 21:13:37.76ID:Ot5nnykg0 C スレで言うことか?
945デフォルトの名無しさん (ワッチョイ 2763-2Cuq)
2023/04/16(日) 21:23:02.75ID:H2kHWHvu0 人工知能とはなんたるや、これがわかってないやつ多いのは仕方ないけど
ム板でこれは由々しきことだな
ム板でこれは由々しきことだな
946デフォルトの名無しさん (ワッチョイ 7f63-sFbk)
2023/04/16(日) 21:48:52.61ID:zHRI9OsR0 煽ってるだけやろ
スレ終盤恒例のウダウダ話ですよ、たまにはいいじゃあ、ありませんか!
948デフォルトの名無しさん (ワッチョイ 7f63-sFbk)
2023/04/16(日) 23:00:41.18ID:zHRI9OsR0 chatGPT関連のスレは6本も立ってるので、好きな場所でやってください
(盛り上がったら誘導してくれてもいいです)
(盛り上がったら誘導してくれてもいいです)
949デフォルトの名無しさん (ワッチョイ c7b3-5oiz)
2023/04/17(月) 02:44:28.44ID:PilU+QdE0 数値の各桁を足す関数を考えました
100点中何点?
(引数nが2023なら2+0+2+3で7を返す)
int chg(int n)
{
int a;
char s[32], tmp[2];
memset(s, 0, sizeof(s));
sprintf(s, "%d", n);
a = 0;
for(int i=0; i<strlen(s); i++){
memset(tmp, 0, sizeof(tmp));
tmp[0] = s[i];
a += atoi(tmp);
}
return a;
}
100点中何点?
(引数nが2023なら2+0+2+3で7を返す)
int chg(int n)
{
int a;
char s[32], tmp[2];
memset(s, 0, sizeof(s));
sprintf(s, "%d", n);
a = 0;
for(int i=0; i<strlen(s); i++){
memset(tmp, 0, sizeof(tmp));
tmp[0] = s[i];
a += atoi(tmp);
}
return a;
}
950デフォルトの名無しさん (ワッチョイ 5f79-uE6i)
2023/04/17(月) 02:47:29.33ID:dBG5z/eM0 数値計算なのにmemsetを使ってる時点で0点
951デフォルトの名無しさん
2023/04/17(月) 03:00:26.88ID:2drVnpNQ0 int chg(int n)
{
int a;
for(a=0;0<n;n/=10) a+=n%10;
return a;
}
{
int a;
for(a=0;0<n;n/=10) a+=n%10;
return a;
}
952デフォルトの名無しさん (ワッチョイ 5fad-sFbk)
2023/04/17(月) 03:01:25.01ID:g2jYQi3l0 >>949
それわざわざ文字列にしてからやる必要ないよね。
10で割った余りを足して10で割るのを繰り返せば良いだけだし。
仮に(宿題や問題の都合で)どうしても文字列に直してやらなければならないのだとしても文字列として使う char 配列の
初期化で全部0で埋めるのは処理の無駄だしそんな事をするのはC言語における文字列の扱いについてよく分かって
いないことの現れだと思う。
それわざわざ文字列にしてからやる必要ないよね。
10で割った余りを足して10で割るのを繰り返せば良いだけだし。
仮に(宿題や問題の都合で)どうしても文字列に直してやらなければならないのだとしても文字列として使う char 配列の
初期化で全部0で埋めるのは処理の無駄だしそんな事をするのはC言語における文字列の扱いについてよく分かって
いないことの現れだと思う。
953デフォルトの名無しさん (ワッチョイ a702-em59)
2023/04/17(月) 03:41:54.19ID:fyienZF80 30点
みんなもっと優しくしてあげなよ。ゴキブリだって生きてるんだぞ
みんなもっと優しくしてあげなよ。ゴキブリだって生きてるんだぞ
954デフォルトの名無しさん (ワッチョイ 4702-1OZE)
2023/04/17(月) 06:01:50.96ID:WvGymo4J0 あかん!
マイナスの場合はどうするねん
マイナスの場合はどうするねん
955デフォルトの名無しさん (ワッチョイ a702-em59)
2023/04/17(月) 06:38:08.16ID:fyienZF80 >>951
nが負の場合は?
nが負の場合は?
956デフォルトの名無しさん (ワッチョイ 67c9-ieXZ)
2023/04/17(月) 08:14:09.28ID:TjOyN7pL0 if (n < 0) n = -n;
957デフォルトの名無しさん (ササクッテロロ Spfb-tEYI)
2023/04/17(月) 09:53:06.18ID:MNSyV7UUp 文字列で与えなきゃデカい数字が扱えないやん
958デフォルトの名無しさん (ワッチョイ c75f-nEk4)
2023/04/17(月) 10:26:43.64ID:jOIYUxZw0 int chg(int n)
{
int a=0,b;
while(n) {
b=n/10;
a+=n-b*10;
n=b;
}
{
int a=0,b;
while(n) {
b=n/10;
a+=n-b*10;
n=b;
}
959デフォルトの名無しさん (ワッチョイ 67c9-ieXZ)
2023/04/17(月) 10:57:06.60ID:TjOyN7pL0960デフォルトの名無しさん (ワッチョイ 2763-2Cuq)
2023/04/17(月) 10:57:27.95ID:I3IibvEZ0 957涙目だなw
961デフォルトの名無しさん (テテンテンテン MM8f-/v6j)
2023/04/17(月) 12:21:07.80ID:sfjAbensM プログラミングには最低限の数学的な素養が必要な事が証明された…
科学技術計算を扱わないとしても、計算論とか数学とは切っても切れない関係にある
科学技術計算を扱わないとしても、計算論とか数学とは切っても切れない関係にある
962デフォルトの名無しさん (ワッチョイ 5f97-3fkD)
2023/04/17(月) 12:50:21.20ID:9nZn/y+b0 銀行の勘定系でも四則演算の知識は必要だし
963デフォルトの名無しさん (ワッチョイ 67c9-ieXZ)
2023/04/17(月) 12:56:30.89ID:TjOyN7pL0 文字列を受ける場合
int chg(const char* s)
{
int ret = 0;
char tmp[2] = { 0 };
while (*s && !isdigit(*s)) s++; /*数字じゃないところは飛ばす */
if (*s) {
while (*s && isdigit(*s)) { /* 数字が連続している間だけ */
tmp[0] = *s; ret += atoi(tmp);
s++;
}
}
return ret;
}
環境依存で
isdigit(*s) を ('0'<=*s && *s <='9') に
tmp[0] = *s; ret += atoi(tmp); を ret += s[0] - '0'; に
置き換えることもできるかもしれない
int chg(const char* s)
{
int ret = 0;
char tmp[2] = { 0 };
while (*s && !isdigit(*s)) s++; /*数字じゃないところは飛ばす */
if (*s) {
while (*s && isdigit(*s)) { /* 数字が連続している間だけ */
tmp[0] = *s; ret += atoi(tmp);
s++;
}
}
return ret;
}
環境依存で
isdigit(*s) を ('0'<=*s && *s <='9') に
tmp[0] = *s; ret += atoi(tmp); を ret += s[0] - '0'; に
置き換えることもできるかもしれない
964はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5f3e-S3w6)
2023/04/17(月) 13:07:40.29ID:FYaudfJt0965デフォルトの名無しさん (ワッチョイ 67c9-ieXZ)
2023/04/17(月) 13:15:24.09ID:TjOyN7pL0 >>964
さんきゅう 数字は保障されてたか
さんきゅう 数字は保障されてたか
966デフォルトの名無しさん (ワッチョイ 67c9-ieXZ)
2023/04/17(月) 13:21:38.21ID:TjOyN7pL0 次の while (*s && isdigit(*s)) と意図の一部は重なるし if (*s) はいらんかったね
967デフォルトの名無しさん (スプッッ Sdff-wBI8)
2023/04/17(月) 15:25:15.58ID:DnqfCfHpd 今のモダンな言語からしたら一見して下らないやり取りだけど
これがC言語なんよね・・・
これがC言語なんよね・・・
968デフォルトの名無しさん (ワッチョイ c75f-nEk4)
2023/04/17(月) 15:50:16.10ID:jOIYUxZw0 ハードとアプリのあいだに多くの計算を必要とするソフトの層があるからね
OSやらで全部カバーするのは無理だからCは死なない
OSやらで全部カバーするのは無理だからCは死なない
969デフォルトの名無しさん (アウアウウー Sacb-/q5i)
2023/04/17(月) 15:51:50.57ID:kmcXsww3a >>964
漢数字も並んでたら嬉しかったと思いませんか
漢数字も並んでたら嬉しかったと思いませんか
970はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5f3e-S3w6)
2023/04/17(月) 16:54:39.89ID:FYaudfJt0 >>969
現実には JIS は読みの順序で Unicode は部首の画数の順序が原則。
漢数字を例外にしたらそれはそれで不格好だし嬉しくない人もいるだろう。
まあ Unicode は後から追加した分だのなんだのでそんなに綺麗に並んでいるわけでもないので
どうせぐちゃぐちゃなら数字くらいは並べても良かったんちゃうかなというのは気持ちはわかる。
現実には JIS は読みの順序で Unicode は部首の画数の順序が原則。
漢数字を例外にしたらそれはそれで不格好だし嬉しくない人もいるだろう。
まあ Unicode は後から追加した分だのなんだのでそんなに綺麗に並んでいるわけでもないので
どうせぐちゃぐちゃなら数字くらいは並べても良かったんちゃうかなというのは気持ちはわかる。
971デフォルトの名無しさん (テテンテンテン MM8f-/v6j)
2023/04/17(月) 17:19:21.10ID:tJ5lxHq2M 一二三四…Why Japanese people!
972デフォルトの名無しさん (スッププ Sd7f-1OZE)
2023/04/17(月) 19:13:46.43ID:92m0URlPd >>967
くくく、、愚かな、、
くくく、、愚かな、、
973デフォルトの名無しさん (スッププ Sd7f-1OZE)
2023/04/17(月) 19:21:15.62ID:92m0URlPd >>954
アンサインドイントで受けたれや!
アンサインドイントで受けたれや!
974デフォルトの名無しさん (アウアウウー Sacb-/q5i)
2023/04/17(月) 20:38:59.46ID:RKcegE7fa 壱<弐<参<死<伍<碌<質<八<苦<拾<百<銭<萬
ですね判ります
ですね判ります
975はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5f3e-S3w6)
2023/04/18(火) 08:26:27.42ID:aNj1uNjV0 >>971
英語の綴りの不規則さも大概やないけ! と突っ込んで完成するネタだと個人的には思ってる。
英語の綴りの不規則さも大概やないけ! と突っ込んで完成するネタだと個人的には思ってる。
976デフォルトの名無しさん (スフッ Sd7f-fSvC)
2023/04/18(火) 14:58:32.85ID:aePy3OZ8d 未初期化の自動変数には「不定値」が割り当てられる、と調べるたり自分が学んでいる本でも書いていますが、自分のコンパイラは常に「0」になっているようです
なぜでしょうか?
ちなみにgcc-10です gcc-11だと「不定値」になります
なぜでしょうか?
ちなみにgcc-10です gcc-11だと「不定値」になります
977はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5f32-iKPJ)
2023/04/18(火) 15:29:21.41ID:rjFDtS/R0 不定の値とは「未規定の値又はトラップ表現」と規定されてる。
常に 0 であってもこの規定に反しないよ。
常に 0 であってもこの規定に反しないよ。
978デフォルトの名無しさん (スフッ Sd7f-7nfa)
2023/04/18(火) 16:27:26.25ID:U9oAz8h1d >>977 ありがとうございます
ちなみに「トラップ表現」とはなんでしょうか?
ちなみに「トラップ表現」とはなんでしょうか?
979デフォルトの名無しさん (スフッ Sd7f-foDO)
2023/04/18(火) 16:57:48.54ID:U9oAz8h1d 976です chatgptで調べました
C言語の仕様では、自動変数を初期化しない場合、その値は不定とされています。これは、コンパイラがメモリ上で変数を割り当てる際に、その領域が以前に使用されていたデータを含んでいる可能性があるためです。
しかしながら、一部のコンパイラでは、自動変数を0で初期化することがあります。これは、セキュリティ上の理由から、またはコードの可読性を向上させるために行われることがあります。
ただし、コンパイラが自動変数を0で初期化することが保証されているわけではありません。したがって、プログラマは自動変数を使用する前に必ず初期化するように注意する必要があります。
C言語の仕様では、自動変数を初期化しない場合、その値は不定とされています。これは、コンパイラがメモリ上で変数を割り当てる際に、その領域が以前に使用されていたデータを含んでいる可能性があるためです。
しかしながら、一部のコンパイラでは、自動変数を0で初期化することがあります。これは、セキュリティ上の理由から、またはコードの可読性を向上させるために行われることがあります。
ただし、コンパイラが自動変数を0で初期化することが保証されているわけではありません。したがって、プログラマは自動変数を使用する前に必ず初期化するように注意する必要があります。
980はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5f32-iKPJ)
2023/04/18(火) 17:04:00.61ID:rjFDtS/R0 >>978
トラップ表現は「オブジェクト型の値を表現しないオブジェクト表現」ということになってる。
その型としてあり得ないビットパターンってこと。
オブジェクトとして格納されたトラップ表現を文字型ではない左辺値式として読みだした場合の結果は未定義となる。
副作用としてそのような表現が生成される場合も未定義。
C の仕様でいう未定義というのは「何が起きても (たとえば暴走しても) 良い」という意味なので実質的に禁止だと思ってもいいよ。
とはいえ整数型でトラップ表現があるアーキテクチャを私は見たことが無いけどな。
トラップ表現は「オブジェクト型の値を表現しないオブジェクト表現」ということになってる。
その型としてあり得ないビットパターンってこと。
オブジェクトとして格納されたトラップ表現を文字型ではない左辺値式として読みだした場合の結果は未定義となる。
副作用としてそのような表現が生成される場合も未定義。
C の仕様でいう未定義というのは「何が起きても (たとえば暴走しても) 良い」という意味なので実質的に禁止だと思ってもいいよ。
とはいえ整数型でトラップ表現があるアーキテクチャを私は見たことが無いけどな。
981デフォルトの名無しさん (スプッッ Sdff-ZLJR)
2023/04/18(火) 18:20:39.02ID:Qric2C4Yd トラップ表現を調べてみたけどほぼほぼ処理系定義絡みなのね
signed int16の0x8000は-32768かもしれないし、トラップ表現かもしれない
1の補数系でsigned int16の0xffffは0かもしれないし、トラップ表現かもしれない
int32* の4バイト境界に合ってないポインタ(int* p=0x0001)は、強制的に4バイト境界に直されるかもしれないし、トラップ表現かもしれない
signed int16の0x8000は-32768かもしれないし、トラップ表現かもしれない
1の補数系でsigned int16の0xffffは0かもしれないし、トラップ表現かもしれない
int32* の4バイト境界に合ってないポインタ(int* p=0x0001)は、強制的に4バイト境界に直されるかもしれないし、トラップ表現かもしれない
982デフォルトの名無しさん (スフッ Sd7f-foDO)
2023/04/18(火) 19:26:15.76ID:U9oAz8h1d >>980 ありがとうございます 勉強になりました
983デフォルトの名無しさん (テテンテンテン MM8f-/v6j)
2023/04/19(水) 02:26:26.48ID:Nl7uhZkpM 自分のコンパイラってのを明らかにしてくれ
どうしても言えないってならしょうがないが…
どうしても言えないってならしょうがないが…
984デフォルトの名無しさん (ワッチョイ 6746-KCd8)
2023/04/19(水) 02:43:50.96ID:MHEst9B30985デフォルトの名無しさん (ワッチョイ 5f4b-zTmk)
2023/04/19(水) 06:44:34.46ID:Dcht9s5K0 >>983
バーカ(笑)
バーカ(笑)
986デフォルトの名無しさん (ワッチョイ 2763-7nfa)
2023/04/19(水) 06:59:06.58ID:twYHK80b0 983息してるか?www
987デフォルトの名無しさん (スプッッ Sdff-wBI8)
2023/04/19(水) 07:47:07.07ID:BpfZGgoRd かてなおったかな
988デフォルトの名無しさん (ワッチョイ c75f-nEk4)
2023/04/19(水) 10:03:53.18ID:rE0e6VM+0 自作コンパイラの話する?
989デフォルトの名無しさん (スプッッ Sdff-wBI8)
2023/04/19(水) 10:43:43.68ID:m2bdQTksd いいぜ?お前からな?
990デフォルトの名無しさん (ワッチョイ c75f-nEk4)
2023/04/19(水) 11:58:53.24ID:rE0e6VM+0 ぼくはLex&YACCでPL/0を作って満足しました。おわり
991デフォルトの名無しさん (スッップ Sd7f-1OZE)
2023/04/19(水) 13:12:38.94ID:IP5wt1Fbd 夜中に路地から飛び出て来たら俺もびびる
でも >>991 では語れんわ!
でも >>991 では語れんわ!
992デフォルトの名無しさん (ワッチョイ 4701-JFqP)
2023/04/19(水) 20:04:36.21ID:3t8AIZsr0 C言語のソースコードを検査して処理系依存や未定義動作等の環境によって
結果が変わりうる可能性のある部分を見つけてくれるツールってどんなのがありますか?
コードエディタはvscodeなのでこれと連携できるとなおよいです
結果が変わりうる可能性のある部分を見つけてくれるツールってどんなのがありますか?
コードエディタはvscodeなのでこれと連携できるとなおよいです
993デフォルトの名無しさん (ワッチョイ 2763-2Cuq)
2023/04/20(木) 08:07:01.48ID:B156zYN00 lintでググれ
994デフォルトの名無しさん (ワッチョイ 07da-i7YA)
2023/04/20(木) 08:23:22.20ID:3as2C0030 BingAIに聞け
995デフォルトの名無しさん (アウアウウー Sacb-JRah)
2023/04/20(木) 09:13:39.09ID:EuuMXrfTa とにかくggr
996デフォルトの名無しさん (スッップ Sd7f-1OZE)
2023/04/20(木) 16:00:12.38ID:ZTK8T1RQd チャットジーピーテー
997デフォルトの名無しさん (ラクッペペ MM8f-bKDU)
2023/04/20(木) 23:37:04.36ID:BN6x5ZIFM さすがに検査対象としてソースコードそのものをchatGPTに丸投げするのはマズイ
個人情報や機密情報をそのまま入力するのは止めるように開発元のopenAIが忠告してたはず
個人情報や機密情報をそのまま入力するのは止めるように開発元のopenAIが忠告してたはず
998デフォルトの名無しさん (テテンテンテン MM8f-JFqP)
2023/04/21(金) 06:41:53.06ID:NmcLOv2EM >>993
よさそう。サンキュー
よさそう。サンキュー
999デフォルトの名無しさん (ワッチョイ a702-em59)
2023/04/21(金) 13:41:26.17ID:cgpIrgwq0 次スレどこ?
1000デフォルトの名無しさん (ワッチョイ 7f63-sFbk)
2023/04/21(金) 14:06:43.23ID:rqj2HSDF010011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 114日 3時間 26分 13秒
新しいスレッドを立ててください。
life time: 114日 3時間 26分 13秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 中国国営メディア「沖縄は日本ではない」… ★4 [BFU★]
- 小野田氏、”中国経済への依存“に警戒感 高市首相の国会答弁巡り [煮卵★]
- 【こんなの初めて…】民泊には既にキャンセルも 中国の渡航自粛で [ぐれ★]
- 台湾声明 「台湾は独立した主権国家、中国は台湾を統治したことがなく、中国は口出しする権利ない」 中国が高市首相に抗議で ★7 [お断り★]
- 日本が「世界で最も魅力的な国」1位に!✨「魅力的な都市」では東京が2位 「魅力的な地域」は北海道が7位に [煮卵★]
- 【サッカー】独占入手 最年長JリーガーにW不倫疑惑 『お風呂覗きたいんですが笑』LINE流出も… 慰謝料トラブルを本人に直撃 [冬月記者★]
- 浜田省吾に「チェリーボーイ」って曲あったっけ? [369521721]
- 【高市速報】日本「中国さんお願い首脳会談させて!ねえってば!😭」 [931948549]
- 日経平均、49000円割れ 国賊高市を許すな [402859164]
- とうすこ🏡愛され絵文字♡🤥👊😅👊👶♡
- ネトウヨ、完全に終わる 「高市さんの『台湾が武力攻撃された場合』というのは『米中戦争が勃発した場合』って意味に決まってるだろ!」 [314039747]
- 中国とのパイプ役がいない高市政権、実施詰みか [668970678]
