!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
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ ff63-dxp0)
2022/12/28(水) 10:40:30.02ID:PyoNDBFu0279デフォルトの名無しさん (ワッチョイ 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言語を開発した
■ このスレッドは過去ログ倉庫に格納されています
