- 1 名前:デフォルトの名無しさん mailto:sage [2022/12/28(水) 10:40:30.02 ID:PyoNDBFu0.net]
- !extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを2行書き込んでください) C言語の話題のみ取り扱います C++の話題はC++スレへ 質問には最低限の情報(ソース/コンパイラ/OS)を付ける 数行で収まらないソースは以下を適当に使ってURLを晒す https://paiza.io/ https://ideone.com/ codepad.org/ C17 www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4713.pdf C11 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 www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf kikakurui.com/x3/X3010-2003-01.html C FAQ 日本語訳 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
- 267 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 16:10:08.09 ID:cLMc+Aima.net]
- >>264
ならどう間違ってるのか指摘してみ 自分では何もできないチキンのくせにw
- 268 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 16:49:59.62 ID:BI3s5DYMd.net]
- >>264
は? 間違っていようがいまいが関係ない おまえは何も言ってないからな なんか高卒くせえなおまえ レポートだの論文だの書いてなさそう
- 269 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 16:50:32.46 ID:BI3s5DYMd.net]
- アンカーミスった
>>265
- 270 名前:デフォルトの名無しさん (ワッチョイ 4e63-+rQD) mailto:sage [2023/01/30(月) 17:22:08.99 ID:dm4YanUU0.net]
- グーグルによればAndroidに存在した深刻なセキュリティー脆弱性の70%近くがメモリー安全に関するバグに
起因するという。同様にマイクロソフトも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関 するバグに起因すると述べている。C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、 Rustを採用するに至ったというわけだ。
- 271 名前:デフォルトの名無しさん (オッペケ Sr3b-3un5) mailto:sage [2023/01/30(月) 17:56:21.35 ID:XUR4uSv7r.net]
- また他人の文書を?
- 272 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 18:51:38.71 ID:uxYUj7Ria.net]
- >>267
まだやるのかよ... > 俺が書いても同じようなこと書くし > 俺が書いても同じようなこと書くし > 俺が書いても同じようなこと書くし そもそもこんなの常識だろw
- 273 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 19:36:
]
- [ここ壊れてます]
- 274 名前:39.96 ID:BI3s5DYMd.net mailto: おまえもアンカーミスったか []
- [ここ壊れてます]
- 275 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 19:55:53.55 ID:uxYUj7Ria.net]
- >>271
お前にレスしてるんだが?w
- 276 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 20:14:51.74 ID:BI3s5DYMd.net]
- 俺が言ってないことを引用してか?
幼稚な誤謬が止まらんやつだな
- 277 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 20:39:01.29 ID:uC26F0Aa0.net]
- >>273
アホなの? お前がわからんこと言ってるから再度書いてあげたわけだが もしかして意図を汲み取れないってオチかなw
- 278 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 20:54:03.20 ID:REdBvt7e0.net]
- おまえの勝手な妄言に意図なんてあったのかすらわからんな
- 279 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 21:08:25.32 ID:uC26F0Aa0.net]
- 結局>>252みたいな低レベルなレスして顔真っ赤ってかw
- 280 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 21:16:42.29 ID:REdBvt7e0.net]
- >>276
>>273 おまえの頭蓋骨ぶち割って脳ミソがどんな奇形なのか見てみたいわw
- 281 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 21:35:36.15 ID:wssO+tMCa.net]
- そんなクソみたいなレスしか返せないなら黙ってりゃいいのにw
- 282 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 21:54:10.97 ID:REdBvt7e0.net]
- 横レス君よ、231あたりのやり取り見てみな?
まあ本人だろうけどw
- 283 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 22:18:56.13 ID:uC26F0Aa0.net]
- >>279
指摘されたアホがファビョってるだけだろw
- 284 名前:デフォルトの名無しさん mailto:sage [2023/01/30(月) 22:29:46.75 ID:REdBvt7e0.net]
- ねらー語100%でど真ん中な正体を現してんなw
- 285 名前:デフォルトの名無しさん mailto:sage [2023/01/31(火) 07:05:48.06 ID:YNMDboNb0.net]
- ねらー語とか言うねらー語使う>>281w
- 286 名前:デフォルトの名無しさん [2023/01/31(火) 12:50:49.15 ID:xZwYkSvIa.net]
- 煽りじゃなくて率直に疑問なんだが
君ら何歳?
- 287 名前:デフォルトの名無しさん mailto:sage [2023/01/31(火) 12:57:03.34 ID:tu4JRhBG0.net]
- 発達障害は精神年齢が極端に低い病気なんだぜ
- 288 名前:デフォルトの名無しさん mailto:sage [2023/01/31(火) 14:42:28.64 ID:YNMDboNb0.net]
- いきなり自己紹介されてもw
- 289 名前:デフォルトの名無しさん mailto:sage [2023/01/31(火) 21:15:54.96 ID:k9I+OMIE0.net]
- マウント取りたがるくせに大したこと言ってなくて
誰ひとり尊敬なんか集まらない寒ーいやつw
- 290 名前:デフォルトの名無しさん mailto:sage [2023/02/01(水) 06:43:31.84 ID:7PejvYvYa.net]
- まだまだ続く自己紹介w
- 291 名前:デフォルトの名無しさん mailto:sage [2023/02/01(水) 07:42:58.57 ID:cqn38iow0.net]
- Q.アスペルガーは嘘をつかないの?
A.嘘をつきまくる。本人は「嘘をついた自覚がない」と主張するが自覚はある。嘘を認めると立場が悪くなるので屁理屈を言って一向に認めない Q.どうして文章を書くとき難しい単語を使いたがるの? A.自分を賢く見せようとしているから。しかし内容がスカスカだったり矛盾しているので全然賢く見えない Q.どうして攻撃的なの? A.アドレナリン放出量が健常者に比べて多く、また人生が上手く行っていない場合が多いので他人に八つ当たりする(我慢できない)傾向が強いから Q.どうしてひねくれたズレた回答ばかりするの? A.アスペルガーは他人と被ることを嫌う。自分が特別な存在でありたいという願望が表れている。健常者の言う妥当な回答はアスペルガーにとっては平凡なつまらない回答。何か特別な凄いことを言おうとしてもそのような知恵がないので悪口とか意味の分からないことを口走ってしまう。
- 292 名前:デフォルトの名無しさん (アウアウウー Sa47-hj3w) mailto:sage [2023/02/01(水) 08:24:41.56 ID:Hf88nfPHa.net]
- 病院の先生に言われたのか?w
- 293 名前:デフォルトの名無しさん mailto:sage [2023/02/01(水) 12:53:11.72 ID:MThDxGPg0.net]
- コードで語れ
- 294 名前:デフォルトの名無しさん mailto:sage [2023/02/01(水) 13:33:50.91 ID:NwXljVovd.net]
- goto hell;
- 295 名前:デフォルトの名無しさん [2023/02/02(木) 04:21:08.56 ID:+vgs1l/J0.net]
- サイズの決まっていない配列はスタックとヒープどちらに確保されますか?
例 char* file = ファイルデータ; char copy[fileのlength]; // この配列 みたいなやつ
- 296 名前:デフォルトの名無しさん [2023/02/02(木) 06:26:11.41 ID:0H/6GH320.net]
- スタックじゃね
それ関数内の一時変数だろ
- 297 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 09:53:18.47 ID:HFa0iCTPd.net]
- 規格では未既定
現実はアセンブラ出力させて嫁
- 298 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 10:03:10.97 ID:UVkNbOZP0.net]
- Cにサイズの決まってない配列は存在しないのだ
- 299 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 10:20:10.06 ID:gL9XQdRL0.net]
- >fileのlength
ここに回答者をひっかけ様とする意図がありそう
- 300 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 10:22:42.67 ID:Ww3cMMp8d.net]
- あれ可変長okになってなかったっけって思ったら変わっていってるのね
- 301 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 10:24:57.02 ID:UVkNbOZP0.net]
- 最近のCはできるん?じじいだから古いのしか知らんのだ
- 302 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 10:32:02.50 ID:Ww3cMMp8d.net]
- 適当にぐぐるとc99で対応してc11でoptinal扱い
以降はしらぬ
- 303 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 11:50:33.16 ID:UVkNbOZP0.net]
- マジか、知らんかったわ
sizeofとかも可変になるんやね
- 304 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 12:28:52.64 ID:HFa0iCTPd.net]
- >>295
extern FILE __iob[];
- 305 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 14:22:32.00 ID:UVkNbOZP0.net]
- >>301
それ宣言ですやんか
- 306 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 14:37:47.00 ID:3ThHJ/C20.net]
- sizeofて最近では()で対象を囲まなくてもいいんだってな
知らなかったw
- 307 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 14:52:29.74 ID:aiTy/mzg0.net]
- 最近もくそもANSI以降sizeof演算子に括弧が必要な時期ってあったの?
K&Rの頃でも要らなかった気がするけど
- 308 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 14:55:50.18 ID:aiTy/mzg0.net]
- 変数か単項式の場合な
型名とかはエラーだろうけど
- 309 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 14:56:34.41 ID:H/TFSr7b0.net]
- 型とオブジェクト(を表す式)のサイズを混同してるんじゃね?
複雑な式だと()があった方が読みやすい場合もあるけど、できる限りは明示的に使い分けたほうが
- 310 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 14:56:36.71 ID:HFa0iCTPd.net]
- >>302
不完全型が「存在しない」ってこと?
- 311 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 15:03:22.53 ID:HFa0iCTPd.net]
- 別な話、BITMAPINFO構造体とかね
- 312 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 15:15:47.14 ID:c8p/A0200.net]
- char*とvoid*なら問題ないのに
char**とvoid**だと代入時に警告が出るのはおかしい ちなみにchar**とvoid*だと警告は出ない
- 313 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 15:19:10.22 ID:yftorlUH0.net]
- char
お前らこれ、なんて読んでる(呼んでる)?
- 314 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 15:26:34.49 ID:c8p/A0200.net]
- テスト
- 315 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 15:27:11.52 ID:3ThHJ/C20.net]
- >>304
いらなかったのを勘違いして付けてたのかもしれん ちなみに1990年代HP-UX上で開発してた時代の話です
- 316 名前:デフォルトの名無しさん [2023/02/02(木) 16:06:25.05 ID:0H/6GH320.net]
- >>310
チャー >>294 つうかヒープに確保するのはmalloc,calloc,reallocだけだと思ったら未規定なのか
- 317 名前:はちみつ餃子 mailto:sage [2023/02/02(木) 18:25:47.28 ID:hGGP2LZA0.net]
- >>313
言語仕様上は寿命が規定されているだけで、どこから確保するなどという詳細はない。 スタックとかヒープとかいう用語すら出てこないよ。
- 318 名前:デフォルトの名無しさん [2023/02/02(木) 18:27:38.70 ID:0H/6GH320.net]
- >>314
なるほどね
- 319 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 19:09:34.25 ID:UVkNbOZP0.net]
- >>307
いや、なんかすまんかった 許してくれ
- 320 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 21:53:34.66 ID:UmPclByQ0.net]
- >>315
世の中には汎用機みたいにハードウェアスタック持たないマシンもあるしね
- 321 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 22:48:09.79 ID:hiwLlcVmd.net]
- void hoge( char *src )
{ char hogebuf[strlen(src)+1]; strcpy( hogebuf, src ); ... } みたいな使い方か 仕様にはないけど慣例としてローカル変数はスタックに取られるだろう static char hogebuf[strlen(src)+1]; とするとデータセグメントに取られるがコンパイル時にサイズが決定できないのでコンパイルエラーになる
- 322 名前:デフォルトの名無しさん mailto:sage [2023/02/02(木) 22:58:23.69 ID:gL9XQdRL0.net]
- _alloca 使ってみるとか
- 323 名前:デフォルトの名無しさん mailto:sage [2023/02/03(金) 02:49:42.07 ID:y/daVwxe0.net]
- 普通スタックに取られるallocaがfree要らずでプロトタイピングに簡便だね
スタックだからBOするし、しない保証も得られないけど ちゃんと固定長バッファ用意したり、ヒープ利用を考えるのは、とりあえず動くもんが出来てからやる派
- 324 名前:デフォルトの名無しさん mailto:sage [2023/02/03(金) 11:57:56.75 ID:31rfnruOM.net]
- c言語の標準入出力ストリームの
本当に基本的なことなんですが わからずに困っています。 教えてください。 std::ofstream stream; ostream << "ABCEFG"; この入力した文字列の"ABCEFG"を 右側3文字を削除して"ABC"にするには どうすれば良いのでしょうか?
- 325 名前:デフォルトの名無しさん mailto:sage [2023/02/03(金) 12:14:25.95 ID:J/8wCXdid.net]
- C++スレへ池
https://mevius.5ch.net/test/read.cgi/tech/1672409791/
- 326 名前:デフォルトの名無しさん mailto:sage [2023/02/03(金) 12:29:37.05 ID:31rfnruOM.net]
- 再度スレ書込み致しました。
ご迷惑おかけ致しました。
- 327 名前:デフォルトの名無しさん (スッププ Sdba-Ik/S) mailto:sage [2023/02/03(金) 20:02:26.07 ID:MxUVRWYAd.net]
- >>318
この、外道が! こんなんコンパイルエラーにしたる
- 328 名前:デフォルトの名無しさん (ワッチョイ 7a4a-5WkL) mailto:sage [2023/02/03(金) 22:09:59.33 ID:JOOyDdlj0.net]
- ハッシュ君うるさいよ
- 329 名前:デフォルトの名無しさん [2023/02/04(土) 18:01:20.17 ID:8KrfBFTv0.net]
- >>321
それはC言語ではない。
- 330 名前:デフォルトの名無しさん (ワッチョイ cf79-p19T) mailto:sage [2023/02/04(土) 23:59:34.16 ID:Av2vQos/0.net]
- C++は最初のアホなstream仕様から抜け出せずいまだに書式出力にすら苦労するのいいよね
- 331 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 00:32:35.28 ID:T8+euhoq0.net]
- 文字列に埋め込んで置き換えるほうが楽だもんね
- 332 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 00:58:06.90 ID:7rKpaUoS0.net]
- 文字配列(へのポインタ値)は普通デカいから、ostreamのビット幅以上に左シフトすると0になるか、signedなら多分UD
- 333 名前:デフォルトの名無しさん [2023/02/05(日) 02:05:11.68 ID:5cc7+aVs0.net]
- 君の言っていることがよく分からない。
- 334 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 02:13:54.95 ID:N1CrWJVM0.net]
- C++でも一度もiostreamなんか使ったこと無いわw
かっこいいとでも思ったのかな?w
- 335 名前:デフォルトの名無しさん [2023/02/05(日) 14:25:38.00 ID:5cc7+aVs0.net]
- そういや C++ の cout みたいなやつには printf() みたいなメソッドはないの?
Java だと System.out (java.io.PrintStreamクラス)に printf() が Java 1.5 から追加されたが。
- 336 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 14:52:22.62 ID:T8+euhoq0.net]
- C++20からformatってのが追加されたそうな
- 337 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 14:56:17.20 ID:D7iSXwqj0.net]
- >>332
c++20 から std::format c++23 から std::print と std::println
- 338 名前:デフォルトの名無しさん [2023/02/05(日) 15:16:48.89 ID:5cc7+aVs0.net]
- >>333 >>334
ありがとう。あるにはあったか。
- 339 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 16:27:06.84 ID:3hYaBabsM.net]
- C++20でstd::formatが追加されたよ
- 340 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 16:27:42.01 ID:3hYaBabsM.net]
- リロードしてなかったのか…失礼
- 341 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 22:53:24.77 ID:Xg2vo6vu0.net]
- char x=1
char y=2 上記のchar型変数のxとyを比較する際に関して質問させていただきます。 上記の変数に格納されている変数を比較する際はif文で問題ありませんか? if(x==y) それともmemcmpやstrcmpで比較するべきでしょうか?
- 342 名前:デフォルトの名無しさん (ワッチョイ 3f7c-4osW) mailto:sage [2023/02/05(日) 23:00:33.79 ID:N1CrWJVM0.net]
- 問題無いよ
memcmp()は使えても strcmp()は流石に無いわw メモリにどう格納されているかなんてエンディアンやらで違うし memcmp()はcharの配列での比較に普通は使うだろう
- 343 名前:デフォルトの名無しさん (ワッチョイ 7f63-4osW) mailto:sage [2023/02/05(日) 23:06:30.35 ID:aB7ZC8J00.net]
- strcmp使うと、yもxも文字列である想定で比較するから
メモリー上の配置次第で変な結果が出る可能性がある
- 344 名前:デフォルトの名無しさん (ワッチョイ cfab-wNzk) mailto:sage [2023/02/05(日) 23:20:42.10 ID:Xg2vo6vu0.net]
- ご教授いただきありがとうございました。
- 345 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 23:41:43.70 ID:7rKpaUoS0.net]
- >>338
charは(ちょっと変わってるけど)整数型なので、当然数値比較でok 何か付け加えるとすれば、整数型だからといってcharと他の整数型と比較/同値テストを行うのは、Cの自明でない算術変換が落とし穴になりがちなので避けた方が賢明 >>339 !memcmp(&a, &b, 1) 的な? その発想に感心 何の役に立つのか俺には思い付けないけど、面白いからヨシ!
- 346 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 23:51:31.50 ID:N1CrWJVM0.net]
- >>342
memcmp()も良く考えてみたらどうメモリに格納されているか分からないから使えないよね intelなどのリトルエンディアンならそれで比較可能だろうけど 今ビッグエンディアンのマシンがあるのか分からないけど、昔あったpowerpcなんかはビッグエンディアンだったね
- 347 名前:デフォルトの名無しさん mailto:sage [2023/02/05(日) 23:59:54.19 ID:7rKpaUoS0.net]
- >>343
aがアドレスの取れない変数なら&aの時点で自明にダメだね 上で提示した比較バイト数が1の特殊ケースに限っては単なるunsigned charとしての比較だから、エンディアンネスは関係ないのでは
- 348 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 00:52:52.00 ID:X/MVAKzo0.net]
- >>343
ビッグエンディアンだろうとリトルエンディアンだろうと1バイトのcharの比較に影響しないんじゃね?
- 349 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 00:53:39.48 ID:X/MVAKzo0.net]
- ちんこ被った
- 350 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 01:11:21.66 ID:yYJiH9Ihd.net]
- 複数byteから成るwordには並べ方の任意性はあるけど、単一byteからなるword内にbyteを並べる方法は一通りしかない、って事だね
- 351 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 01:12:53.01 ID:7Y+tRqBu0.net]
- >>345
charで例えばchar a = 1でリトルエンディアンだとmemcmp()で1バイト比較でも大丈夫だろうけど ビッグエンディアンの場合、プロセッサの制約次第だろうけど必ずしも 01と1バイトのみでデータが入っているとは限らず 00 00 00 01みたいに4バイトで格納されてるかも知れないから どんなマシンでも動くという前提で作るなら辞めておいた方が無難かなという風に思った
- 352 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 01:14:24.69 ID:7Y+tRqBu0.net]
- 実際の所は分からないけど、char同士の比較は単にa == bで問題無いし
蛇足だったな・・・
- 353 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 01:38:26.50 ID:LWec8Zrw0.net]
- エンディアンなんか関係ねーだろアホか
- 354 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 02:12:44.74 ID:Dw7rHwSO0.net]
- >>348
処理系/マシンが同一なら問題無い Cのcharをuint_32相当として保持するマシンが仮に有ったとして、Cがcharのつもりで書き出し/読み返しを行い、unsigned char(とその配列)として比較する限りはCから違いは見えないよ だって高級言語だもの() バイナリデータのやり取り、詰め物あり、他言語プロセスとの共有メモリなら適切に変換するルーチンが必要だけど、それはCに限らず全てのプログラムに当てはまる事
- 355 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 02:49:15.07 ID:Dw7rHwSO0.net]
- 32bit以下のデータを全て32bit値として扱うマシンを想定してるのかな?
それは最小アドレス単位、cで言うCHAR_BITSが32のマシンと言い換えられるよね CHAR_BITSが何bitであろうが、cから見ればsizeof(char)==1である事には変わりがない と言えば分かりやすいだろうか
- 356 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 06:44:27.92 ID:xFQJ/1dca.net]
- >>340
変な結果どころかそもそも&xや&yの次のアドレスを読もうとすることあるから未定義動作だし
- 357 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 08:54:18.69 ID:KoRl3hvD0.net]
- おそらく初心者であろう質問を深読みして暇をつぶすお前らに乾杯
- 358 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 11:15:52.75 ID:t0SsOUx4a.net]
- MISRA-C 2004 の本がある。
MISRA-Cをやっていないと、2004の潜在型/2012の本質型が分からないはず int 型未満の型を、4バイトに変換してから、元に戻す仕組み。 CPU には、int型未満のレジスタが無いので、使わない部分をマスクするしかない こういう内部の仕組みは、C/C++ の本には載っていない こういう変換を知っている香具師は、 むしろ初心者じゃなくて、かなり研究している香具師 普通の香具師は、こういう仕組みを知っているはずがないから。 C/C++の本には載っていないはず
- 359 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 11:23:50.95 ID:KoRl3hvD0.net]
- そりゃ絶対とは言わないけどさ、詳しいのにあんな質問の仕方ならかなりひねくれてるわ
- 360 名前:デフォルトの名無しさん [2023/02/06(月) 15:55:39.76 ID:Pcm2g4vQ0.net]
- 1 byte は 8 bit とは限らないってことだな。
1 octet は 8 bit 固定と決まっているが。
- 361 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 17:55:31.90 ID:KoRl3hvD0.net]
- いやでもマシンによってバイトのサイズは変わるかもしれないけど、
少なくともC言語のchar型は8ビットでしょ?違うの?
- 362 名前:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cf3e-F1up) mailto:sage [2023/02/06(月) 18:07:02.20 ID:uFl4yuTv0.net]
- >>358
ちがうよ。 CHAR_BIT がなんのためにあると思ってんの。
- 363 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 18:13:28.24 ID:X/MVAKzo0.net]
- >>355
そういうCPUの制約を気にしなくていいのが高級言語だと思うけど違うんかね? そういうCPU相手のコンパイラならマスクするなり0埋めするなりしてるんじゃない? 想定外のCPU相手なら起こりえるかもしれないけど、それはしょうがないよね
- 364 名前:デフォルトの名無しさん (スップ Sddf-WS7p) [2023/02/06(月) 18:36:57.74 ID:Zh5BYfUjd.net]
- Cは処理系定義が至る所にあるからな
intが2byteの環境もあるし x86(x64)しか使わないと決め打ちできりゃいいけど しょぼいCPU向けのしょぼいコンパイラのこと考えなきゃいけないとかなり面倒くさい
- 365 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 19:21:28.86 ID:zDYmZQkKa.net]
- >>360
> そういうCPUの制約を気にしなくていいのが高級言語だと思うけど違うんかね? そういう人はJavaなりC#なりを使えばいいと思うよ
- 366 名前:はちみつ餃子 mailto:sage [2023/02/06(月) 20:45:09.59 ID:uFl4yuTv0.net]
- >>360
システム記述言語として使うことが想定内にあるので高級言語の中では低級なほう。 半世紀前に登場した時点では高級だったかもしれんがそのときの事情を引きずり続けてたら高級になりきれないのもしょうがない。
- 367 名前:デフォルトの名無しさん mailto:sage [2023/02/06(月) 21:35:59.24 ID:T2gDixZS0.net]
- 中の下あたり?
|

|