[過去ログ]
C言語なら俺に聞け 163 (1002レス)
C言語なら俺に聞け 163 http://mevius.5ch.net/test/read.cgi/tech/1721137434/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
31: デフォルトの名無しさん (ワッチョイ 0701-gNE8) [sage] 2024/09/02(月) 22:08:58.52 ID:DccWFR9v0 Rustを褒めて自尊心保つやつの次はNim版が出てきたのか http://mevius.5ch.net/test/read.cgi/tech/1721137434/31
32: デフォルトの名無しさん (ワッチョイ 5f5a-HmUJ) [sage] 2024/09/02(月) 23:12:40.71 ID:3HuFqT9S0 Nim推しは以前から変なやつ多かったから http://mevius.5ch.net/test/read.cgi/tech/1721137434/32
33: デフォルトの名無しさん (ワッチョイ 27eb-mtNr) [sage] 2024/09/02(月) 23:28:27.10 ID:09ZYUS090 Nim言語の良し悪しは分からんが、メモリ管理に関しては理想的だわ ムーブ後のオブジェクトにアクセスするとRustだとコンパイルエラーで面倒な事になるけど、Nimは参照カウントを使って解決するので少し遅くなるだけだ そっちの方が絶対良い 気になる場合は後で直せる http://mevius.5ch.net/test/read.cgi/tech/1721137434/33
34: デフォルトの名無しさん (ワッチョイ c770-bfwh) [sage] 2024/09/03(火) 18:51:27.81 ID:xAVNzrUq0 >>33 コンパイルエラー? http://mevius.5ch.net/test/read.cgi/tech/1721137434/34
35: デフォルトの名無しさん (ワッチョイ 27eb-mtNr) [sage] 2024/09/04(水) 01:03:52.03 ID:c5l8yfTZ0 >>34 だからなんだ? Rustでムーブ後のオブジェクトにアクセスしてみろよ http://mevius.5ch.net/test/read.cgi/tech/1721137434/35
36: デフォルトの名無しさん (ワッチョイ 6780-e6xt) [sage] 2024/09/04(水) 09:34:28.92 ID:eBGcFHFx0 >>33 どこにコンパイル時期にメモリの不正アクセス検知できるコンパイラーがあるんだよ 便利すぎないか http://mevius.5ch.net/test/read.cgi/tech/1721137434/36
37: デフォルトの名無しさん (ワッチョイ 5fc1-mtNr) [sage] 2024/09/04(水) 09:42:59.71 ID:uvDwCGK/0 >>36 ムーブ(所有権の移動)の概念知らない奴かよw http://mevius.5ch.net/test/read.cgi/tech/1721137434/37
38: デフォルトの名無しさん (ワッチョイ bfe0-5+wm) [sage] 2024/09/04(水) 11:20:54.96 ID:yycwJMQK0 時代に取り残されたじじい http://mevius.5ch.net/test/read.cgi/tech/1721137434/38
39: デフォルトの名無しさん (ワッチョイ 7f63-hbJw) [sage] 2024/09/04(水) 11:26:12.60 ID:6FkHz3Id0 今どきのヤングはどの辺を走っているのかな? http://mevius.5ch.net/test/read.cgi/tech/1721137434/39
40: デフォルトの名無しさん (アウアウエー Sa1f-XN8b) [] 2024/09/05(木) 00:07:48.49 ID:/oUqYYg3a RefCellのborrowとかborrow_mutがCより速い訳がないだろ http://mevius.5ch.net/test/read.cgi/tech/1721137434/40
41: デフォルトの名無しさん (ワッチョイ c770-bfwh) [sage] 2024/09/05(木) 06:20:13.32 ID:IMzSmyWL0 アセンブラ使ったことない子供たちにはわからんのだろ http://mevius.5ch.net/test/read.cgi/tech/1721137434/41
42: デフォルトの名無しさん (ワッチョイ 7f0e-D/hx) [sage] 2024/09/05(木) 08:53:17.49 ID:oYH6V42M0 Aiの時代にこんなレトロ言語に夢中になってる場合でもないだろ http://mevius.5ch.net/test/read.cgi/tech/1721137434/42
43: デフォルトの名無しさん (ワッチョイ 8710-D/hx) [sage] 2024/09/05(木) 09:42:51.26 ID:00qJ+IF20 ペイントソフト溢れた時代にエクセルで描いて絶賛される時代。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/43
44: デフォルトの名無しさん (ワッチョイ c770-bfwh) [sage] 2024/09/05(木) 13:27:55.60 ID:IMzSmyWL0 AIなんて究極的には予備知識なしで使えるようになるもんだろ いま必死で呪文を覚えてる奴らには気の毒だがw プログラムの学習はそれとは逆だぞ http://mevius.5ch.net/test/read.cgi/tech/1721137434/44
45: デフォルトの名無しさん (ワッチョイ 0701-CMA8) [sage] 2024/09/05(木) 13:41:12.34 ID:YoL+MCk60 AIにはアセンブラかCで書かせた方が効率がいいじゃん http://mevius.5ch.net/test/read.cgi/tech/1721137434/45
46: デフォルトの名無しさん (ワッチョイ 5fc1-mtNr) [sage] 2024/09/05(木) 20:45:06.75 ID:mduO1G690 今はアニメもCGで作る時代だけど、だからデッサン力なんて不要と言ってるのに近いなw http://mevius.5ch.net/test/read.cgi/tech/1721137434/46
47: デフォルトの名無しさん (ワッチョイ 27d1-XcdZ) [sage] 2024/09/06(金) 02:12:25.16 ID:ObPC8Kit0 AIなら直接機械語書けそうだけど最低限人間がコードを読めるようにするためにCで出力するのが流行りそう http://mevius.5ch.net/test/read.cgi/tech/1721137434/47
48: デフォルトの名無しさん (ワッチョイ 7f0e-D/hx) [sage] 2024/09/06(金) 17:06:00.74 ID:3sxDLHxZ0 もはやプログラマはAIにどう質問するかだけが求められてる時代 ビックデータが前提なのはわかってるけどchatAIと画像AIはマジでオーパーツだわとても0と1だけで実現されてる技術と思えん・・・ http://mevius.5ch.net/test/read.cgi/tech/1721137434/48
49: デフォルトの名無しさん (ワントンキン MM3f-cmcv) [sage] 2024/09/06(金) 17:30:18.67 ID:bUa4C6AFM ここはAIの質問スレになる予定です http://mevius.5ch.net/test/read.cgi/tech/1721137434/49
50: デフォルトの名無しさん (ワッチョイ 7fe0-bfwh) [sage] 2024/09/06(金) 17:59:38.15 ID:wWap9ofG0 >>48 Cやアセンブラを知らなかったらコンピューター自体が魔法に思えるんだろうなw http://mevius.5ch.net/test/read.cgi/tech/1721137434/50
51: デフォルトの名無しさん (ワッチョイ 8710-D/hx) [sage] 2024/09/06(金) 18:14:44.45 ID:fzo/g0jk0 プログラム上での比較が、未だに変数2つの比較(if(A=B)とか )しかイメージ出来ないので AIのアルゴリズムどころか、2つのサイズの違う画像比較ってのさえどうやるのか検討もつかん・・・。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/51
52: デフォルトの名無しさん (ワッチョイ bf9c-H9U1) [sage] 2024/09/06(金) 18:37:17.18 ID:4wqfzUPa0 3Blue1BrownJapanのディープラーニング解説動画 https://www.youtube.com/watch?v=tc8RTtwvd5U 現在chapter6まで和訳されてる(本家英語版は7が出た) http://mevius.5ch.net/test/read.cgi/tech/1721137434/52
53: デフォルトの名無しさん (ワッチョイ 7fe0-bfwh) [sage] 2024/09/06(金) 21:13:32.20 ID:wWap9ofG0 >>51 引き算してその絶対値が一定以内だったら同じとみなす if(abs(A-B)<C){… それぐらいならわかるだろ? http://mevius.5ch.net/test/read.cgi/tech/1721137434/53
54: デフォルトの名無しさん (ワッチョイ 47b1-D/hx) [sage] 2024/09/06(金) 21:19:53.07 ID:eMGejp5m0 点でしか見れない人に面を理解させる手法・・・ http://mevius.5ch.net/test/read.cgi/tech/1721137434/54
55: デフォルトの名無しさん (ワッチョイ 274e-XcdZ) [sage] 2024/09/06(金) 21:46:42.59 ID:ObPC8Kit0 この世界もほぼ陽子と中性子と電子だけで出来てるのにこれだけ複雑なんだから0と1だけで複雑な演算出来ても不思議ではない http://mevius.5ch.net/test/read.cgi/tech/1721137434/55
56: デフォルトの名無しさん (ワッチョイ 5fad-WCFq) [sage] 2024/09/06(金) 21:53:29.16 ID:H8MSdYGz0 ようこちゃんとでんこちゃんは知っているけど 中性子って子は知らない http://mevius.5ch.net/test/read.cgi/tech/1721137434/56
57: デフォルトの名無しさん (ワンミングク MM3f-cmcv) [sage] 2024/09/06(金) 22:09:25.96 ID:aKdHJjI6M 光子ちゃんも忘れないであげて http://mevius.5ch.net/test/read.cgi/tech/1721137434/57
58: デフォルトの名無しさん (ワッチョイ 5fc1-mtNr) [sage] 2024/09/07(土) 00:47:09.38 ID:mFTEs+Pq0 0と1だけじゃないけどな その他に位(くらい)という概念がある これによって無限の数を表現できる むしろ位の概念によって数が表現されている それさえ有れば記号なんて何でもいい http://mevius.5ch.net/test/read.cgi/tech/1721137434/58
59: デフォルトの名無しさん (ワッチョイ 47b1-D/hx) [sage] 2024/09/07(土) 20:51:59.47 ID:XGt+Z3l/0 どこかの国だか村では両手の指の数以上を表現する言葉がないって話をどこかで・・・。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/59
60: デフォルトの名無しさん (ワンミングク MM3f-cmcv) [sage] 2024/09/07(土) 22:06:43.98 ID:GNvzZpYIM ムカデは100進数で数えている http://mevius.5ch.net/test/read.cgi/tech/1721137434/60
61: デフォルトの名無しさん (ワッチョイ f94a-865n) [sage] 2024/09/08(日) 00:25:53.15 ID:zd6RlSMM0 >>59 位の概念が無いから10までしか数えられない 位を考慮すると両手で1023まで数えられる http://mevius.5ch.net/test/read.cgi/tech/1721137434/61
62: デフォルトの名無しさん (ワッチョイ f94a-865n) [sage] 2024/09/08(日) 00:30:46.43 ID:zd6RlSMM0 指を曲げる伸ばすの2通りとすると1023だが、指を完全に曲げる、伸ばす、半分まで伸ばす(曲げる)の3通りとすると3^10-1=59,048まで表現できるなw http://mevius.5ch.net/test/read.cgi/tech/1721137434/62
63: デフォルトの名無しさん (ワッチョイ 662a-Vk/b) [] 2024/09/08(日) 07:38:58.99 ID:LXYiwE7e0 >>60 ヒトを含めた四肢類は4進法なの? http://mevius.5ch.net/test/read.cgi/tech/1721137434/63
64: デフォルトの名無しさん (ワッチョイ bd5f-FAeb) [sage] 2024/09/08(日) 10:08:59.05 ID:mVbg4wOX0 >>61-62 人差し指と薬指を伸ばして、かつ中指と小指を曲げるのは難易度がやや高いぜ。 (親指を伸ばせば『グワシ』) http://mevius.5ch.net/test/read.cgi/tech/1721137434/64
65: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/08(日) 10:25:56.18 ID:IhFVsGpe0 グワシは古語 http://mevius.5ch.net/test/read.cgi/tech/1721137434/65
66: デフォルトの名無しさん (ワッチョイ a510-IFMZ) [sage] 2024/09/08(日) 15:41:04.82 ID:aTNFTtUw0 とりあえず、他人の投稿で言ってもいない単語や解釈を勝手に加えてマウント取ろうとするのはどうかと思うぞ。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/66
67: デフォルトの名無しさん (ワッチョイ a6e0-RtM0) [sage] 2024/09/08(日) 23:23:27.00 ID:6gnZvy5A0 問題はギャグとしてつまらないという点だ http://mevius.5ch.net/test/read.cgi/tech/1721137434/67
68: デフォルトの名無しさん (ワッチョイ fa2d-2PHd) [] 2024/09/09(月) 17:06:32.51 ID:ft14UVke0 lvalueに関してエラーが出るんだけど、どうしてこれがだめなのかわからないです #include <stdio.h> int main() { char s[] = "hoge"; char t[100]; while (*t++ = *s++) ; printf("%s", t); } http://mevius.5ch.net/test/read.cgi/tech/1721137434/68
69: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/09(月) 17:17:50.19 ID:JnQxQHVK0 >>68 char *p = s; char *q = t; while (*q++ = *p++) こう書けば通る。何故かはちょっと考えて ; http://mevius.5ch.net/test/read.cgi/tech/1721137434/69
70: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-IU9Y) [sage] 2024/09/09(月) 17:19:13.64 ID:XH4OT6yj0 >>68 s の型は char[5] 、 t の型は char[100] だというのはわかる? だけど式に出てくる配列は原則として配列の先頭要素を指すポインタ (この場合に型でいえば char*) に型変換される。 変換後に出てくるポインタは rvalue なのでインクリメントの対象に出来ない。 rvalue ってのは式の評価をする間に一時的に生まれて評価が終わったら消えるものなので 仮にインクリメント出来たとしても何にも使えない。 配列が勝手にポインタに変換されるっていうのが変則的で分かり難いポイントだけど これは C を使ってたら避けようがない。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/70
71: デフォルトの名無しさん (ワッチョイ 9e79-auhz) [sage] 2024/09/09(月) 18:22:38.82 ID:zvC05GrM0 ポインタと同じ表記が使えるだけでポインタに変換されるわけではないぞ老害 http://mevius.5ch.net/test/read.cgi/tech/1721137434/71
72: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/09(月) 18:25:50.23 ID:JnQxQHVK0 char *s = "hoge"; char t[100]; int i = 0; while (*(t+i) = *s++) i++; sを配列ではなく、ポインタに変える、 tもポインタにしたいところだが、格納先確保が目的なら 先頭アドレスからのオフセット指定で格納する様に変更 http://mevius.5ch.net/test/read.cgi/tech/1721137434/72
73: デフォルトの名無しさん (ワッチョイ eaad-Pebh) [sage] 2024/09/09(月) 18:30:55.08 ID:D7I9z5W00 それなら while (*(t+i) = *(s+i)) って書くかな http://mevius.5ch.net/test/read.cgi/tech/1721137434/73
74: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/09(月) 18:36:50.90 ID:JnQxQHVK0 s[]、t[100]と書いたとき、sやtはメモリー上の特定の位置を指す ラベルのようなものなので書き換える事は出来ない。ポインタ定数とも言う。 一方ポインタ変数は、任意のアドレスを指す変数、変更も操作できる constとか、突っ込まんでください http://mevius.5ch.net/test/read.cgi/tech/1721137434/74
75: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-IU9Y) [sage] 2024/09/09(月) 18:57:03.60 ID:XH4OT6yj0 >>71 規格には「型変換する」と明瞭に書いてあって変換しないと解釈できる余地はない。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/75
76: 68 (ワッチョイ fa2d-2PHd) [sage] 2024/09/10(火) 07:06:02.36 ID:fwzKZR690 色々教えてくれてありがとう s[]の先頭を指すポインタ*sを++で進めることができちゃったら s[0]もズレちゃうのでだめだってことだよね そりゃだめだわ http://mevius.5ch.net/test/read.cgi/tech/1721137434/76
77: デフォルトの名無しさん (ワッチョイ 1e6e-Qzc4) [sage] 2024/09/10(火) 07:45:50.17 ID:ZXVJVLjy0 s[], t[100]; って宣言したなら、s[idx], t[idx] って使おうよ http://mevius.5ch.net/test/read.cgi/tech/1721137434/77
78: デフォルトの名無しさん (ワッチョイ a6b5-RtM0) [sage] 2024/09/10(火) 08:09:53.27 ID:oAzej4EH0 そこはこだわらんでもいいだろ http://mevius.5ch.net/test/read.cgi/tech/1721137434/78
79: 警備員[Lv.5][新芽] (ワッチョイ f969-ztXh) [sage] 2024/09/10(火) 09:09:59.70 ID:H8O84G940 sやtは constということでもないのか http://mevius.5ch.net/test/read.cgi/tech/1721137434/79
80: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/10(火) 10:14:17.88 ID:WwqiNfks0 立て札は移動禁止です http://mevius.5ch.net/test/read.cgi/tech/1721137434/80
81: デフォルトの名無しさん (アウアウエー Sa52-t/33) [] 2024/09/10(火) 13:19:09.36 ID:KGjTz1X0a >sやtは const constっていつからあったか知らんけど constない頃からsもtも*pや*qとは扱いが違ったんじゃね http://mevius.5ch.net/test/read.cgi/tech/1721137434/81
82: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-IU9Y) [sage] 2024/09/10(火) 14:04:37.40 ID:rqI1GpSt0 lvalue の概念は K&R 1st の頃からあったよ。 lvalue という用語はちょっとどうなの……と思うけど。 Rust だと place と呼んでるみたいだね。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/82
83: デフォルトの名無しさん (ワッチョイ eafd-BHET) [] 2024/09/10(火) 21:10:52.20 ID:UL+jlunn0 お前は変な事ばかり言ってるからもう引っ込んどけよ http://mevius.5ch.net/test/read.cgi/tech/1721137434/83
84: デフォルトの名無しさん (ワッチョイ adba-mB8c) [sage] 2024/09/10(火) 21:22:40.00 ID:OwUxLa4s0 ポインタそのものを変えないやつと 指す先を変えないやつの書き方で 未だに迷うっていう http://mevius.5ch.net/test/read.cgi/tech/1721137434/84
85: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-IU9Y) [sage] 2024/09/10(火) 21:35:00.77 ID:rqI1GpSt0 キーワードを並べる順序で意味が変わるのは迷うけど 順序をどうならべても良い場合もそれはそれでびっくりする。 int const long foo; みたいに変数を宣言して良い。 まあそんなことをするやつはいないと思うけど。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/85
86: デフォルトの名無しさん (ワッチョイ a6ee-865n) [sage] 2024/09/10(火) 22:53:26.23 ID:BKdRZcpD0 consr char*は本当はchar const*と書くべきなんだよね これでもコンパイルは通って同じ結果になる 読む時は右から読めばいい pointer to const char これだと指す先がconstなのが分かりやすい ポインター自体をconstにするには char* constとして、同じく右からconst pointer to charと読む 両方constは char const* const となるけど、最初のconstは左に書けるので const char* const とも書ける これが分かれば迷う事は無くなる http://mevius.5ch.net/test/read.cgi/tech/1721137434/86
87: デフォルトの名無しさん (ワッチョイ a6b2-Z1Qu) [sage] 2024/09/11(水) 01:20:44.10 ID:ZbZmMQbl0 それ前橋氏のポインタ完全制覇で知った http://mevius.5ch.net/test/read.cgi/tech/1721137434/87
88: デフォルトの名無しさん (ワッチョイ a6b5-RtM0) [sage] 2024/09/11(水) 08:00:07.84 ID:eq6A6T9x0 >>81 アセンブラにして考えるとわかりやすい char s[] = "hoge"; アセンブラの表現↓ s: .db "hoge¥0" char *s = "hoge"; アセンブラの表現↓ s_org: .db "hoge¥0" s: .dw s_org 上の場合書き換えようにもsには実体がない アドレス定義ラベルでしかない *ただし完全に最適化されると下も上と同じになる http://mevius.5ch.net/test/read.cgi/tech/1721137434/88
89: 警備員[Lv.1][新芽] (ワッチョイ 1ea1-ztXh) [sage] 2024/09/11(水) 09:16:47.77 ID:IhX3t9qv0 ここでいう sには実体がない、とはどういうことですか? http://mevius.5ch.net/test/read.cgi/tech/1721137434/89
90: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-IU9Y) [sage] 2024/09/11(水) 09:19:23.27 ID:Zm39E+090 大元の質問が >>68 なので低レイヤからの説明はあまり筋が良くないと思う。 エラーメッセージの意味を読み取れるようにならないから。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/90
91: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/11(水) 09:30:46.32 ID:dQ20XCdF0 8ビットCPUのメモリ保護されてない頃だと 配列どころか、プログラムコードも書換できました笑 http://mevius.5ch.net/test/read.cgi/tech/1721137434/91
92: デフォルトの名無しさん (ワッチョイ a510-IFMZ) [sage] 2024/09/11(水) 09:49:35.14 ID:h52e7Ahm0 > sには実体がない、とはどういうことですか? 変数エリアに書き込まれていない数値、データ。 プログラム上で要求された時にコンパイル時や関数によってその都度作られる仕様・・・かな?しらんけど。 >91 >プログラムコードも書換できました それはむしろ”技術”扱いだったな。 サブルーチンでジャンプ先やIOポートを書き換えて・・・て。 昔はCPU等のバグ利用がテクニックだったけど、今じゃバグの温床、セキュリティホール扱いだね。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/92
93: デフォルトの名無しさん (ワッチョイ 1e3e-42jK) [] 2024/09/11(水) 15:02:12.18 ID:DEx1pDDa0 こんだけいて>>77くらいしかまともな回答者がいないとかひどいなあ http://mevius.5ch.net/test/read.cgi/tech/1721137434/93
94: デフォルトの名無しさん (ブーイモ MM45-bJfQ) [sage] 2024/09/11(水) 15:25:16.11 ID:1n/VD1trM そんなのこだわっても結局関数の引数で配列型では渡せないんだからその程度は受け入れて慣れたほうがいい http://mevius.5ch.net/test/read.cgi/tech/1721137434/94
95: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/11(水) 15:58:54.52 ID:dQ20XCdF0 ここは、「聞け」とはあるが、「回答する」とは書いていない http://mevius.5ch.net/test/read.cgi/tech/1721137434/95
96: デフォルトの名無しさん (ワッチョイ 1e45-Qzc4) [sage] 2024/09/11(水) 16:44:23.62 ID:+qxKgs2P0 こっちが自然だろ t[100]を*(t+idx)なんてやる方が何の拘りだよ http://mevius.5ch.net/test/read.cgi/tech/1721137434/96
97: デフォルトの名無しさん (ワッチョイ 5ec2-bJfQ) [sage] 2024/09/11(水) 16:55:25.58 ID:tx1pt4w10 その程度どっちでもいい http://mevius.5ch.net/test/read.cgi/tech/1721137434/97
98: 警備員[Lv.4][新芽] (ワッチョイ 8afb-ztXh) [sage] 2024/09/11(水) 20:45:08.11 ID:l6JSnCmY0 配列は外部リンケージのときも注意が必要なんだよね あまりそういう使い方しないから、すぐにはピンとこないや http://mevius.5ch.net/test/read.cgi/tech/1721137434/98
99: デフォルトの名無しさん (ワッチョイ 65cd-RtM0) [sage] 2024/09/11(水) 22:04:51.93 ID:+V4MmH6p0 >>93 別にまともでもない 配列で定義してポインタで操作できるのがCの柔軟性だから idxにこだわると簡単な操作を複雑にしかねない http://mevius.5ch.net/test/read.cgi/tech/1721137434/99
100: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/11(水) 23:11:00.81 ID:dQ20XCdF0 > while (*(t+i) = *s++) これは、 > while (*t++ = *s++) ;これがエラーになるのは何故かと言う質問から始まったからです t++がエラーで、t+iなら大丈夫が理解できれば解決だと思う ポインタの理解というのは壁にはなりますが、 乗り越えれば意外と簡単です、がんばれ! http://mevius.5ch.net/test/read.cgi/tech/1721137434/100
101: 警備員[Lv.7][新芽] (ワッチョイ f931-ztXh) [sage] 2024/09/12(木) 00:58:15.86 ID:QGeKjVfA0 >>92 ありがとうございました(sには実態がない) gcc -S test.c で .s を出力して眺めてみると、そのような感じになっていました 最適化と、AT&Tのオペランドが逆なのに慣れず読みにくかったですが "hoge" は「実体」が .data に置かれ、実行時にスタックにコピーされるのかと想像してましたが、実装がどうあれ、スタッフ上に "hoge" を置くための元を実体というのは違うと思いました 実際、"hoge" は .db でアロケートされず、4字は 32ビットの数値定数とされ、スタックに即値で転記されていました(実行時に生成されていました) # とても伝わりにくいと思いますが… http://mevius.5ch.net/test/read.cgi/tech/1721137434/101
102: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7932-IU9Y) [sage] 2024/09/12(木) 08:54:43.60 ID:TbaO6N6i0 誰も説明してなかったことに気づいた。 E1[E2] が (*((E1)+(E2))) と等価であるというルールがある。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/102
103: デフォルトの名無しさん (ワッチョイ 8a5c-8qrK) [] 2024/09/12(木) 21:59:57.92 ID:m7IlJoP80 それいにしえからのバカ発見器なんだが2024年になってもまだ動いてるとはC言語おそるべし http://mevius.5ch.net/test/read.cgi/tech/1721137434/103
104: 警備員[Lv.3][新芽] (ワッチョイ b68a-ztXh) [sage] 2024/09/12(木) 23:41:05.77 ID:+nQe2m720 次の方どうぞ http://mevius.5ch.net/test/read.cgi/tech/1721137434/104
105: デフォルトの名無しさん (ワッチョイ a6ee-865n) [sage] 2024/09/12(木) 23:43:09.62 ID:sEtsUeoh0 >>103 その自由度があるからC++でhtbl["key"]の様な事が出来る Cじゃ意味ない仕様だけど、禁止する必要も無かろう http://mevius.5ch.net/test/read.cgi/tech/1721137434/105
106: デフォルトの名無しさん (ワッチョイ 65cd-RtM0) [sage] 2024/09/13(金) 08:23:17.89 ID:ykZRrldI0 >>101 "hoge"は長さちょうど32ビットだから即値でスタックに書き込むようになってるということなら 最適化によってそこまで省略されてるわけでsに実体がない件とはあまり関係ないな 最適化オフにするかもっと長い文字列で実験してみては http://mevius.5ch.net/test/read.cgi/tech/1721137434/106
107: 警備員[Lv.5][新芽] (ワッチョイ 1eeb-ztXh) [sage] 2024/09/13(金) 09:12:47.27 ID:cjEIJ97r0 >>106 ありがとうございます もう少し正確に書けばよかったのですが、4字と '\0' の2回に分けて転記していました また、hogeを長くして(10字くらい?)試すと、やはり 4字ずつ整数にパックして即値で転記していました もっと長大な文字列試せば、別にアロケートされたそれをコピーするコードが吐かれたかもしれませんが、>>92 の指摘通り、実体がなく実行時に生成されることを確認できたとして打ち切ってしまいました http://mevius.5ch.net/test/read.cgi/tech/1721137434/107
108: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 65e8-hr+9) [sage] 2024/09/13(金) 10:12:57.71 ID:9XTDQHQm0 C の仕様は抽象機械の動作として記述される。 抽象機械の動作をどのように実際の機械と対応させるかは自由で、見かけ上の動作が同じならどういう機械語になってもいい。 生成された機械語から言語仕様を理解しようとすべきではないよ。 低レイヤプログラミングするならどう対応付くか知る必要がある場合もあるのは否定しないけど…… http://mevius.5ch.net/test/read.cgi/tech/1721137434/108
109: デフォルトの名無しさん (ブーイモ MM45-bJfQ) [sage] 2024/09/13(金) 10:23:10.52 ID:OBSQyTYbM その抽象機械の定義はしょせん後付け c言語のソースから生成されるマシン語の想像が付くようになるのはいいこと http://mevius.5ch.net/test/read.cgi/tech/1721137434/109
110: デフォルトの名無しさん (ワッチョイ 6663-QZ+t) [sage] 2024/09/13(金) 10:25:26.12 ID:y2ap91b60 C言語ハンドコンパイラ http://mevius.5ch.net/test/read.cgi/tech/1721137434/110
111: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 65e8-hr+9) [sage] 2024/09/13(金) 11:25:36.89 ID:9XTDQHQm0 >>109 機械語の想像がつくのが不要とも悪いとも言ってないよ。 そこから言語仕様を理解しようとすべきじゃないと述べてる。 できないから。 http://mevius.5ch.net/test/read.cgi/tech/1721137434/111
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 891 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s