C言語なら俺に聞け 161

レス数が900を超えています。1000を超えると表示できなくなるよ。
2023/04/21(金) 14:05:20.18ID:rqj2HSDF0
!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言語なら俺に聞け 160
https://mevius.5ch.net/test/read.cgi/tech/1672191630/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2023/10/10(火) 00:41:46.82ID:WRpVvMtq0
テキストファイルの形式としてSJISはビッグエンディアンでなければならないって程度の認識。
2023/10/10(火) 00:44:51.87ID:WRpVvMtq0
SJISを文字と数値の相対表と見るか、
テキストのファイル形式を含めた規格とみるか。
838デフォルトの名無しさん (ワッチョイ 5a7f-FHep)
垢版 |
2023/10/10(火) 01:54:11.03ID:hSg/mMq/0
いまどきキャラクタセットの操作を自作してしまうのはヤバいプログラマ
2023/10/10(火) 09:46:25.05ID:jpaIozT30
昔書いたunicode対応のソースが最新コンパイラでエラー、ワーニングが山程出てきて心折れるんや・・・。
840デフォルトの名無しさん (ワッチョイ ae8f-HisN)
垢版 |
2023/10/10(火) 10:47:51.74ID:0SFeJAzN0
文字列としてリトルエンデアンだと可変長文字コードが面倒な事になるでしょうに
841デフォルトの名無しさん (アウアウウー Sa39-OOOs)
垢版 |
2023/10/10(火) 10:58:37.96ID:vCJOXgr3a
>>824
漢字ROMとVRAMはエンディアンというより(エンディアン)もあるが
ややこしかったのは右半分と左半分とかな
2023/10/10(火) 11:36:08.74ID:k8E2nUhl0
>>840
"Aア"は0x41 0x83 0x41だけどこれがもし0x41 0x41 0x83だったら、0x41 0x41まで読んだところでこれが"AA"なのかどうかを次のバイトまで読まないと確定出来なくなるわけだよね
2023/10/10(火) 14:45:56.30ID:lY2q8v9P0
>>835
どのあたりが巧妙なのか ついでに解説をお願い思案す
844デフォルトの名無しさん (アウアウウー Sa39-OOOs)
垢版 |
2023/10/10(火) 15:06:58.22ID:vCJOXgr3a
x 巧妙に
o 泥臭く

EUC-JPで良かったんだよ
2023/10/10(火) 17:44:06.68ID:JaQe+SGi0
EUC-JPにすると半角カナ文字が全滅するんだよな
2023/10/10(火) 20:02:21.46ID:SBkOlj5r0
半角カナは全滅してほしかったし
今すぐにも全滅してほしい
847デフォルトの名無しさん (ワッチョイ daad-iLfk)
垢版 |
2023/10/10(火) 22:25:54.11ID:8PzXep7k0
もう面倒だから Unicode を UTF-8 で使え。
2023/10/11(水) 00:45:18.47ID:m71rV3Zb0
euc-jpの半角カナは全滅じゃなくて、バイト数が多くなる、だったような。3バイトとか
2023/10/11(水) 01:29:28.77ID:cflt71CU0
>>843
JIS X 0208はいわゆる半角文字も2byteコードで定義されてるが、それと半角カナをエスケープシーケンス無しで混在させる方法を定義したんだよ!
ほぼWikipediaの受け売りだw
詳しいことはWikipediaを見ろよ
つうかそんなことも分からん若造が増えたんだな…
850デフォルトの名無しさん (ワッチョイ daad-iLfk)
垢版 |
2023/10/11(水) 03:32:09.53ID:RVlIgJ7N0
>>848
2バイト。 0x8e が最初にあって、その次にシフトJISの半角仮名と同じコードが来る。
2023/10/11(水) 09:52:13.46ID:LeQSJgup0
1バイトアルファベットも2バイト化して
852デフォルトの名無しさん (ワッチョイ 0a0d-HisN)
垢版 |
2023/10/11(水) 10:14:54.69ID:NQyPw3h00
文字コードも、32bitとか、64bitとか、メモリーアクセス単位に見合うサイズにしたらいいだけだよなぁ
可変長にする必要が全く無い
2023/10/11(水) 10:43:08.13ID:ZfRV8AUK0
80年代プログラマ「1バイト、1ビットでも無駄にするんじゃねぇよ!!」
2023/10/11(水) 11:58:33.24ID:cflt71CU0
1文字に見える絵文字もUTF-8で41byteになったりするんで、1文字64bitにしようが可変長になる
なのでUTF-8かUTF-16にしておくのが無難
UTF-16は主な漢字は2byteで済むんで、何気にバランスが良い文字コードだと思えるようになってきた
2023/10/11(水) 21:17:47.06ID:DBrOrPS60
>>824
表示コードだろ
SJISにしろJISにしろ表にすると空白部分がいっぱいあってROM容量がもったいない(当時は)から
2023/10/11(水) 21:21:23.81ID:DBrOrPS60
>>852
まあ数百文字しか文章を書かないプログラマーの発想だねえw
数万文字や数万ページの文書になると保存や検索にリソース食ってもったいない
857デフォルトの名無しさん (ワッチョイ daad-iLfk)
垢版 |
2023/10/11(水) 22:12:46.43ID:RVlIgJ7N0
>>853
2KBに無理矢理詰め込むみたいなことを昔やったことあるな。ROMの容量に合わせてビット単位で詰め込む。

そういえば Apple ][ のモニタプログラムが2KB丁度で6502のアセンブラのソース見て物凄い詰め込み具合に感動した。
1バイトも無駄がなく2KBピッタリだった。
2023/10/11(水) 23:09:10.07ID:Oo4KNMoV0
> 1バイトも無駄がなく2KBピッタリだった。

そんなことない。まだ詰めれるし空きもあった。
859デフォルトの名無しさん (ワッチョイ daad-iLfk)
垢版 |
2023/10/11(水) 23:34:38.65ID:RVlIgJ7N0
>>858
えー。なかったと思ったがなあ。それって Apple ][ plus とか、後に出た少し変えたやつでは?
2023/10/11(水) 23:40:13.44ID:m71rV3Zb0
>>850
おお、指摘サンキューです

アップル2とか
マニアック過ぎて付いて行け
2023/10/11(水) 23:42:44.40ID:UuDrjcXU0
アリスソフトのゲームはひらがながカタカナで入っててうふ~んだったな
862デフォルトの名無しさん (ワッチョイ 9120-5icV)
垢版 |
2023/10/12(木) 02:28:41.65ID:5xqSIwyk0
>>859
https://6502disassembly.com/a2-rom/OrigF8ROM.html
> feae: ea nop
> feaf: ea nop

↑空きの例
863デフォルトの名無しさん (ワッチョイ 7a26-vQFs)
垢版 |
2023/10/12(木) 06:14:09.61ID:YEvWoXVk0
linuxのファイルディスクリプタの操作に関する質問です。
別デバイスとのシリアル通信制御にselect関数を使用しています。
受信可能かタイムアウトかを判断しているんですが、別デバイスから電文が送られてからselect関数が受信可能を検知するまでに20msほどかかり、その後のreadしたサイズは32ビットほどです。
理想は5ms以内で受信可能を検知してほしいです。
ボーレートは80000bps(カスタム)
システムコールを使っている以上、デバイスドライバ。いじらないと難しいですかね?
2023/10/12(木) 07:17:12.28ID:oHsanHa80
むむむ
20msは遅いですね 特殊な環境?
865デフォルトの名無しさん (ワッチョイ 7a6e-vQFs)
垢版 |
2023/10/12(木) 08:00:06.42ID:YEvWoXVk0
>>864
ラズパイです
32ビットではなく32バイトです
送っている電文も32バイトです
866デフォルトの名無しさん (ワッチョイ 7a6e-vQFs)
垢版 |
2023/10/12(木) 08:06:20.25ID:YEvWoXVk0
ちなみにselect置かずに、ノンブロッキングでループでreadした場合も、少しずつreadできるわけではなく、20ms後に送った電文全てがreadで読み取れます
2023/10/12(木) 08:47:57.58ID:qyteNpVi0
rawモードにしてないとかじゃないの
2023/10/12(木) 09:10:29.66ID:qyteNpVi0
後は低遅延カーネルが使えるなら使うとか
869デフォルトの名無しさん (ワントンキン MMea-nQTY)
垢版 |
2023/10/12(木) 09:28:19.79ID:aDAtXVNfM
そもそもデータは実際どれくらいで到着してんのか確認はしたんだよな?
送信側が20ms毎にしか動いてないかとかその辺も
870デフォルトの名無しさん (アウアウウー Sa39-OOOs)
垢版 |
2023/10/12(木) 10:25:26.89ID:u59ybXeVa
16bit sensation 観てるけど
https://16bitsensation-al.com/
出て来るPC画面の編集中のアセンブラが
32bit用のコードじゃん
2023/10/12(木) 10:58:22.07ID:ULGeIkC90
どの画面かよく分からなかった
使ってるPCはどうやら9801VMみたいだ

https://twitter.com/16bit_anime/status/1708133347308818759/photo/1

5インチフロッピーなんて、なつかし
https://twitter.com/thejimwatkins
872デフォルトの名無しさん (ワッチョイ b6e6-vQFs)
垢版 |
2023/10/12(木) 11:22:56.30ID:m8bqtWD+0
>>869
それは確認してます。
873デフォルトの名無しさん (ワッチョイ b6e6-vQFs)
垢版 |
2023/10/12(木) 11:23:04.80ID:m8bqtWD+0
>>869
それは確認してます。
2023/10/12(木) 12:24:11.74ID:CHwK2zqJ0
>>870
アセンブラスレッドでやれ
875デフォルトの名無しさん (ワッチョイ b62e-vQFs)
垢版 |
2023/10/12(木) 17:39:39.42ID:m8bqtWD+0
>>865
200バイト送ってみましたが、検知の時間差はあまりありませんでしたが、read1回で200バイト全部取れました…
2023/10/12(木) 21:33:07.79ID:ZXm8+EHB0
ラズパイのスタックがバグってるだけだろ
他の環境でも試したのか?
877デフォルトの名無しさん (ワッチョイ 4677-HisN)
垢版 |
2023/10/13(金) 21:33:40.39ID:9i9XasLe0
パケットサイズ貯まるまで送信しないか
貯まらなくても時間で送信だったかなぁ
2023/10/13(金) 21:48:20.10ID:tPyDzWZ1M
>>877
その辺は設定で変えられるんだよ
rawモードにすれば両方無効になる
2023/10/13(金) 22:00:39.18ID:vGVgbb2n0
1人日5万円くれたら解決してあげるよ
2023/10/14(土) 01:22:13.59ID:tQyeYAE20
つ5万円
2023/10/14(土) 01:23:14.75ID:Z8feDlim0
プロになると、Linux は3回 shutdown しろと言う香具師がいるw

Windows に至っては、
shutdown はダメ、再起動しろってさw

どういうシステムやねんw
882デフォルトの名無しさん (ワッチョイ 13ad-Fhx2)
垢版 |
2023/10/14(土) 02:10:30.63ID:BgrcFKKf0
>>862
それ何かの都合でどうしても必要だから NOP にしてあるのでは? まあでも開いてると言えば開いてるな。
とすると2KB未満であの機能が詰め込まれていることになって、余計に凄い感じするわけだが。

まあでも逆アセンブルが出来るのにその文字がソースに入ってなくて、一体どうやっているのかと延々と
プログラムを読んで、確か2バイトに3文字詰め込んでて(f9c0, fa00 の辺り)、当時それを見つけて驚いたな。
初心者だったからね。
883デフォルトの名無しさん (ワッチョイ 7b27-S8Dy)
垢版 |
2023/10/14(土) 12:58:59.76ID:FvSW4+JI0
3回shutdownは初めて聞いた
3回syncのことかな?

1回目が依頼、2回目が実行、3回目は祈り・・・
884デフォルトの名無しさん (ワッチョイ 13ad-62ca)
垢版 |
2023/10/14(土) 23:20:34.47ID:BgrcFKKf0
2回以上連続syncはやったことないなあ
2023/10/15(日) 00:37:55.29ID:1GgH9uvV0
スマン。3回shutdown じゃないわ。
3回sync だった

Windows は高速スタートアップがあるから、
shutdownはメモリの内容をSSD に保持するから、復元されてしまうので、
再起動するのが正解らしい
2023/10/15(日) 06:23:13.62ID:RYkKDVjT0
説明がヘタで何言ってるのかわからんが
このスレッドのテーマと関係ないだろ他でやれ
2023/10/15(日) 21:52:14.34ID:nkdZTM470
一回目の sync に時間がかかるとその間にメモリの書き換えが起きてしまう可能性があるから、二度目の sync をする。ふつうはそこで満足する。どうしても心配ならもう一度 sync するわけだけど、そこまで心配なら別の方法を考えた方がいい。
2023/10/15(日) 21:54:23.57ID:WV6g/2dS0
888888888888888888888888888888888888888
888888う8888888888ん88888888888888888こ88
888888888888888888888888888888888888888
889デフォルトの名無しさん (アウアウウー Sadd-f0fU)
垢版 |
2023/10/16(月) 10:05:31.11ID:kgcCjrnKa
CでWindowsのデバドラ描くなら
shutdownが高速スタートアップかそうじゃないかは重要じゃないか
cmd 起動して shutdown -s -t 0 をよくやる
これだけじゃなくて hybernate をあらかじめ off にしておく必要もある
powercfg.exe /hibernate
890デフォルトの名無しさん (ワッチョイ 29b7-S8Dy)
垢版 |
2023/10/17(火) 10:35:23.04ID:QQA0GvA50
>>887
1回目のsyncはコマンド実行後にすぐ返るけど、
2回目のsyncは1回目が終わるまでブロックされるんよ
だから書き込み保証の代わりになってたってわけ
3回目は祈り・・・
2023/10/17(火) 10:47:53.72ID:+MFXb2Fe0
祈りは聞き届けられました!
2023/10/17(火) 12:31:38.91ID:y7v373yJ0
三菱UFJ銀行など10金融機関で約250万件の送金が滞った全国銀行データ通信システム(全銀システム)の障害は、各金融機関と同システムをつなぐ機器の容量(メモリー)不足が要因だったことがわかった。機器の更新で処理量が増え、想定の容量を超えてパンクした。事前のテストが不十分だった可能性もあり、検証が求められる。
2023/10/17(火) 12:35:48.82ID:y7v373yJ0
記事読んでると、素人が作ったのかと思うほど粗雑に感じるが、
単に記事を書いた記者が素人だからかもしれない。
894デフォルトの名無しさん (ワントンキン MM4b-ELGK)
垢版 |
2023/10/17(火) 13:14:23.15ID:XZGXsIC3M
またスレチかよわざとやってんのか?w
895デフォルトの名無しさん (アウアウウー Sadd-f0fU)
垢版 |
2023/10/17(火) 14:30:57.88ID:vCPpyEw2a
ルーターのNATテーブルが貧弱で
定期的に再起動しないといけないルーターがあったのを思い出した
896デフォルトの名無しさん (ワッチョイ 0bc2-T9H3)
垢版 |
2023/10/20(金) 15:45:46.46ID:Ipe4ElpV0
それなんてcorega?

ってフレーズも懐かしい・・・。
2023/10/20(金) 15:48:07.37ID:v1uIJG0f0
最近じゃ組み込み系もPythonになってるらしいな
898デフォルトの名無しさん (ワッチョイ 13ad-62ca)
垢版 |
2023/10/20(金) 18:19:30.36ID:Zfs7dH680
初耳だ
899デフォルトの名無しさん (ワッチョイ 13ad-62ca)
垢版 |
2023/10/20(金) 18:19:46.73ID:Zfs7dH680
初耳だ
2023/10/20(金) 19:00:07.60ID:OBgHVD6WM
ArduinoとかはまだC/C++が使われているけどRaspberryPiあたりではPythonが使われている
901デフォルトの名無しさん (ワッチョイ c134-eijK)
垢版 |
2023/10/20(金) 20:37:45.65ID:iiycX8pJ0
ラズパイが組み込みって言われてもなぁ
2023/10/20(金) 20:52:13.36ID:WNS0tsmN0
コンパクトなバイナリーが作れるんだろうか
それともライブラリーが別途必要?
903デフォルトの名無しさん (ワッチョイ 2bb6-AzOG)
垢版 |
2023/10/20(金) 22:48:36.74ID:gDJgEYng0
Cでつくったもので自慢のものある?
2023/10/21(土) 12:56:21.39ID:Auba50wB0
ラズパイの話するならPicoか否か書けよ
2023/10/21(土) 13:34:03.99ID:ifbOBJO10
ラズパイの話するな
2023/10/21(土) 13:40:58.48ID:m23W7dra0
>>903
通信プロクシとテストデータ作成ツール^^
しょうもない物しか作ってないわスマンな
2023/10/21(土) 21:29:19.14ID:t2gg/cweM
作ったものは数々あるが、
自慢できるものはない
908デフォルトの名無しさん (ワッチョイ 9946-5z4m)
垢版 |
2023/10/21(土) 22:19:05.57ID:9n8k9yEZ0
恥の多いプログラムを作って来ました。
909デフォルトの名無しさん (アウアウウー Sa09-6i8i)
垢版 |
2023/10/22(日) 11:30:49.85ID:GXjFDCr1a
そもそも業務で造ったものは守秘義務あるからな
2023/10/22(日) 12:04:50.59ID:7Lbl94Rb0
>>908
プログラマー失格やな!
2023/10/22(日) 12:08:40.64ID:+M4dXZ790
作っていて、恥ずかしさを感じないとすれば、それこそ失格だ
人は失敗の中から多くを学ぶ
2023/10/22(日) 12:41:16.58ID:WtUZjflvd
恥とかそんなのとは違う
ビジネスとはスピードと品質のトレードオフ
そのバランスを考えられないのがプロとして恥
2023/10/22(日) 12:41:36.43ID:DsuvifSY0
>>911
太宰治の人間失格とかけてんだろ
気付いてやれよ
914デフォルトの名無しさん (ワッチョイ 7aad-CfcT)
垢版 |
2023/10/22(日) 13:27:44.71ID:lT9uYjte0
>>900
それってLinuxではないOSで動く場合?
Linux入れちゃったらドライバとそれに対するライブラリだけの問題で言語は関係なくなるよね。
2023/10/22(日) 13:30:41.44ID:7Lbl94Rb0
自分で調べろよそれぐらい…お前もプログラマー失格やな!
2023/10/22(日) 19:09:03.13ID:1z8BeiKk0
生まれてすみません
2023/10/22(日) 19:19:12.31ID:+M4dXZ790
いいってことよ
918デフォルトの名無しさん (ワイーワ2 FF62-6i8i)
垢版 |
2023/10/24(火) 16:01:52.72ID:ju9L4gE1F
おかえり
919デフォルトの名無しさん (ワッチョイ ba7c-Habm)
垢版 |
2023/10/26(木) 00:49:54.03ID:89nTklyv0
C23でC11ぶりに更新ってC標準化委員会(?)だかはサボり過ぎじゃねーか。
C++なみとは言わんが5年ぐらいごとに見直せや。
nullptrとか入るの遅過ぎる。
deferも無いとかアホすぎる。
2023/10/26(木) 02:57:54.97ID:q3UKhsX80
いつまでも未完成のサグラダファミリアみたいなC++とは違ってCは生まれた時から完成してるから
後々機能追加したところでそいつの自己満でしかない
未完成のC++から逆輸入されて良かったことなんて行コメント程度しかない
921デフォルトの名無しさん (スフッ Sd9a-dytz)
垢版 |
2023/10/26(木) 08:37:00.27ID:FkoAeS+Vd
コンパイラがC11のgets_s()関数に対応してないんですが、どうすればいいですか?
922デフォルトの名無しさん (スフッ Sd9a-dytz)
垢版 |
2023/10/26(木) 08:37:12.14ID:FkoAeS+Vd
コンパイラがC11のgets_s()関数に対応してないんですが、どうすればいいですか?
2023/10/26(木) 09:02:33.67ID:nJ6kaeWr0
あきら🍈
924デフォルトの名無しさん (スフッ Sd9a-9f78)
垢版 |
2023/10/26(木) 09:08:02.65ID:FkoAeS+Vd
>>923 あきらめてvisual studioでgets_s()関数を使えていますが、vscodeの普段使っているコンパイラでは
使えません
925デフォルトの名無しさん (スフッ Sd9a-9f78)
垢版 |
2023/10/26(木) 09:08:14.78ID:FkoAeS+Vd
>>923 あきらめてvisual studioでgets_s()関数を使えていますが、vscodeの普段使っているコンパイラでは
使えません
2023/10/26(木) 09:11:27.20ID:oN20rU1J0
自分で書いたってそんなに時間はかからんだろう。
行がバッファより長いときや引数が条件を満たさないときに
制約ハンドラを呼ぶってだけだぞ。
927デフォルトの名無しさん (スフッ Sd9a-9f78)
垢版 |
2023/10/26(木) 09:13:48.45ID:FkoAeS+Vd
>>926 結局gets()関数の代用はfgets()しかないというこですね
2023/10/26(木) 09:38:07.39ID:G4ruVh0t0
自分で作れよ
Cってそういうもんだ
929デフォルトの名無しさん (スフッ Sd9a-9f78)
垢版 |
2023/10/26(木) 10:11:10.35ID:FkoAeS+Vd
>>928 自分で書きました 
930デフォルトの名無しさん (スッップ Sd9a-Habm)
垢版 |
2023/10/26(木) 11:50:48.14ID:ZES507rzd
>>920
そんなんだからリーナスだってぶち切れるんだぞ。
2023/10/26(木) 13:16:49.71ID:62xlwgird
winでguiアプリ作る時とかCランタイムなんて全く使わないでしよ
今更Cで作るかは置いといて
2023/10/26(木) 13:20:48.32ID:S8nCpIo20
(σ・∀・)σゲッツ!!
2023/10/26(木) 14:24:42.99ID:Qn92XRBA0
文字列周りのあれこれは Cランタイムのお世話も併用することが
934デフォルトの名無しさん (スフッ Sd9a-Cy5w)
垢版 |
2023/10/26(木) 15:12:00.43ID:ES29OdTad
TCHAR無視でASCIIzしか使わないならいけるかな
memcpyとかmallicとかも普通に使えるしな
TCHARのUNICODE版の文字列処理ってもうCランタイムと言うのは無理ありそう
末尾にに_s付いたのとか先頭にl付いたのとか
もう亜種増え過ぎで覚えられんくなった
あれはCランタイムじゃなくてwin32apiだわ
2023/10/26(木) 17:56:31.84ID:SEjxiCyL0
C言語でGC実装したライブラリあったよね
あれって今でも使われてんの?
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況