!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
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言語なら俺に聞け 157
https://mevius.5ch.net/test/read.cgi/tech/1624846971/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
C言語なら俺に聞け 158
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ブーイモ MMcf-4SjH)
2021/12/25(土) 12:11:46.61ID:xxeaCAplM954デフォルトの名無しさん (US 0Hd3-RyvJ)
2022/07/28(木) 20:04:33.20ID:KHWw5jDSH >>953
身につくかどうか、ではなく、どんな考え方、思考法、そして可能であればその思考法に似た行動様式等がざっくばらんに出てくることを期待します
身につくかどうか、ではなく、どんな考え方、思考法、そして可能であればその思考法に似た行動様式等がざっくばらんに出てくることを期待します
955デフォルトの名無しさん (アウアウウー Sa5d-R4TS)
2022/07/29(金) 10:43:07.31ID:nIcw6oQba956デフォルトの名無しさん (ワッチョイ a991-/dmg)
2022/07/29(金) 13:39:55.55ID:LR/vrGjN0 これ俺の顔じゃない
鏡がバグってる
鏡がバグってる
957デフォルトの名無しさん (ワッチョイ 79bb-dSCr)
2022/07/30(土) 00:46:07.92ID:wZaxY20D0 組み込みの世界ってまだC言語が主流ですよね?
IoTも同じ?
IoTも同じ?
958デフォルトの名無しさん (ワッチョイ 9a3e-dSCr)
2022/07/30(土) 00:52:24.51ID:B4kVDCsM0 IoT というのは広い概念なのでそれだけではなんとも言えん。
低レイヤもあれば高レイヤもある。
低レイヤもあれば高レイヤもある。
959デフォルトの名無しさん (ワンミングク MM8a-KtxA)
2022/07/30(土) 13:46:54.93ID:kKuVH5i8M I Of the Tiger
960デフォルトの名無しさん (ワッチョイ 16ae-1wwR)
2022/07/30(土) 15:28:57.06ID:sZRL8Eez0 Intensity Output Time
961デフォルトの名無しさん (ワッチョイ d68f-lbI7)
2022/07/30(土) 16:11:54.93ID:2k62MWGF0 次のCの仕様が出てくるというのにこのスレでは全く話題にならないんだな
962デフォルトの名無しさん (ワッチョイ 1602-9Top)
2022/07/30(土) 16:16:00.43ID:dAB37O5c0 tccで標準入力からソース読むプログラムに、さらにstdinからデータ読ませるのは無理ですかね?
(echo "ccode with stdin" | tcc -run - ) <file
みたいな感じで(fileまでソースと取られてコンパイルエラー)
一時ファイル作れば出来るけど、ちょっとワンライナー書くときに不便を感じる
echo "main(char*c, char**v){puts(v[0]);puts(__FILE__);}" | tcc -run -
は
-
<stdin>
を出力します、多分tccはプロセスを自己書き換えで置き換えるんでしょうか?ファイルハンドルが継承されてる?
(echo "ccode with stdin" | tcc -run - ) <file
みたいな感じで(fileまでソースと取られてコンパイルエラー)
一時ファイル作れば出来るけど、ちょっとワンライナー書くときに不便を感じる
echo "main(char*c, char**v){puts(v[0]);puts(__FILE__);}" | tcc -run -
は
-
<stdin>
を出力します、多分tccはプロセスを自己書き換えで置き換えるんでしょうか?ファイルハンドルが継承されてる?
963デフォルトの名無しさん (ワッチョイ cdb0-1wwR)
2022/07/30(土) 16:20:55.72ID:2BJ7IgJr0 新しいCってそもそもどこで需要があるんだろう
964デフォルトの名無しさん (ワッチョイ 79bb-dSCr)
2022/07/30(土) 16:38:39.78ID:wZaxY20D0965デフォルトの名無しさん (ラクッペペ MMee-kNao)
2022/07/30(土) 16:55:11.02ID:KiVbgp3AM 組み込みと言ってもラズパイ環境では完全にPythonが主流でC/C++(gcc)はあまり利用されてないイメージがある
966デフォルトの名無しさん (ワッチョイ 7a63-dSCr)
2022/07/30(土) 17:15:44.08ID:rf6S0zxh0 組込って普通は静的バイナリにするんじゃないの
967はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9a3e-dSCr)
2022/07/30(土) 17:20:48.89ID:B4kVDCsM0 >>964
C23 には defer は入らない見込み。 全体としては C++ の後追い的な変更が多い。
auto が型推論付きの変数定義になるだとか、constexpr や nullptr が導入されるだとか、
属性の表記法が C++ 風の [[ ]] を使った形になるだとか、そういう感じのやつ。
(ちなみに今回導入される constexpr は変数には付けられるが関数には付けられないので
コンパイル時プログラミングが C++ みたいに出来るわけではない。
定数式の成立要件が C と C++ で違うので C++ 寄りにする追加機能。)
思い切った変更ではあるが、根本的なプログラミングスタイルを変えない程度のバランスのとれたところだと思う。
C23 には defer は入らない見込み。 全体としては C++ の後追い的な変更が多い。
auto が型推論付きの変数定義になるだとか、constexpr や nullptr が導入されるだとか、
属性の表記法が C++ 風の [[ ]] を使った形になるだとか、そういう感じのやつ。
(ちなみに今回導入される constexpr は変数には付けられるが関数には付けられないので
コンパイル時プログラミングが C++ みたいに出来るわけではない。
定数式の成立要件が C と C++ で違うので C++ 寄りにする追加機能。)
思い切った変更ではあるが、根本的なプログラミングスタイルを変えない程度のバランスのとれたところだと思う。
968はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9a3e-dSCr)
2022/07/30(土) 17:34:09.22ID:B4kVDCsM0 >>966
もちろんそういう部分も大きいけど……。
リッチな組み込みは一昔前のパソコンを超えるくらいの性能はあるし Linux くらいは載るので、
デバイスドライバさえ用意すればあとはパソコンみたいに使えるという場合は普通にある。
かつては組み込みと言えばそのデバイスドライバの部分こそ大きかったと思うんだが、
IoT を意識するレベルの製品だとアプリケーションレイヤが巨大なので Python くらいは動くこともあるだろう。
主流かというとちょっと疑問ではあるが……。
もちろんそういう部分も大きいけど……。
リッチな組み込みは一昔前のパソコンを超えるくらいの性能はあるし Linux くらいは載るので、
デバイスドライバさえ用意すればあとはパソコンみたいに使えるという場合は普通にある。
かつては組み込みと言えばそのデバイスドライバの部分こそ大きかったと思うんだが、
IoT を意識するレベルの製品だとアプリケーションレイヤが巨大なので Python くらいは動くこともあるだろう。
主流かというとちょっと疑問ではあるが……。
969デフォルトの名無しさん (ワッチョイ 7a63-dSCr)
2022/07/30(土) 17:38:53.84ID:rf6S0zxh0 それは組み込みと言うより、OS上で動かしている単なるアプリだろう
970デフォルトの名無しさん (ラクッペペ MMee-kNao)
2022/07/30(土) 17:48:55.44ID:lDkW8Lp7M971デフォルトの名無しさん (ワッチョイ 7a63-dSCr)
2022/07/30(土) 17:50:58.85ID:rf6S0zxh0 パソコンで同じことやっても組み込みなんて言わないし
972デフォルトの名無しさん (ラクッペペ MMee-kNao)
2022/07/30(土) 18:00:48.67ID:jaybBP1OM 組み込みの開発はクロス開発が基本なのでパソコンはただの端末だけどね
プログラムはボード上のSoCで実行される
プログラムはボード上のSoCで実行される
973デフォルトの名無しさん (ワッチョイ 79bb-dSCr)
2022/07/30(土) 19:32:55.53ID:wZaxY20D0974デフォルトの名無しさん (ワッチョイ 7a01-Jv5Y)
2022/07/30(土) 19:50:32.99ID:zHogqexf0 >>964
> 高レイヤーだと普通にリッチな言語が使われたりするのかな
複合機などはWebサーバー程度は普通に入ってるから設定画面等は HTML, JavaScript, CSS, Python を使ってたりする
IWS (Internal Web Server:HTML, JavaScript, CSS, Python)
https://dsp.konicaminolta.jp/best-program
もちろんOS上で動いてるし、でかいシステムだとPCその物を内蔵してたりすることもある
なのでこんなものが売られてる
https://jpn.nec.com/fc/index.html
> 高レイヤーだと普通にリッチな言語が使われたりするのかな
複合機などはWebサーバー程度は普通に入ってるから設定画面等は HTML, JavaScript, CSS, Python を使ってたりする
IWS (Internal Web Server:HTML, JavaScript, CSS, Python)
https://dsp.konicaminolta.jp/best-program
もちろんOS上で動いてるし、でかいシステムだとPCその物を内蔵してたりすることもある
なのでこんなものが売られてる
https://jpn.nec.com/fc/index.html
975デフォルトの名無しさん (ラクッペペ MMee-kNao)
2022/07/30(土) 19:51:42.13ID:DgXxKl0UM IoTというよりはスタンドアローン環境か小規模な独自ネットワーク程度の組み込み分野の方がC/C++利用は多いと思う
976デフォルトの名無しさん (ワッチョイ 79bb-dSCr)
2022/07/30(土) 23:12:48.90ID:wZaxY20D0977はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9a3e-dSCr)
2022/07/30(土) 23:53:43.60ID:B4kVDCsM0978デフォルトの名無しさん (ワッチョイ 7a63-dSCr)
2022/07/31(日) 00:41:41.63ID:n00x/A2v0 そうなるとPC使っていても組み込み扱いして良いと言うことになりますよね
近い構成どころか、何でもありになりそう
近い構成どころか、何でもありになりそう
979はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9a3e-dSCr)
2022/07/31(日) 01:25:42.56ID:9sXTRHUo0 そうだよ。
技術的な実態としてはそんなにはっきりした境界がない。 なんでもありだ。
用途の側でふんわりと分野が分かれてる。
技術的な実態としてはそんなにはっきりした境界がない。 なんでもありだ。
用途の側でふんわりと分野が分かれてる。
980デフォルトの名無しさん (アウアウウー Sa09-gD8W)
2022/07/31(日) 01:39:56.41ID:AA5JChgka 組込とハード制御的なやつの混同はよくありますね
981デフォルトの名無しさん (ワッチョイ 16ae-1wwR)
2022/07/31(日) 06:39:14.45ID:1QnevV7r0982デフォルトの名無しさん (ワンミングク MM8a-arNi)
2022/07/31(日) 14:01:45.17ID:k/gcENLBM 古いソースが問題なくコンパイル出来ないと、それはそれで問題にされる。
今でもトライグラフ受け入れないと駄目なんだろう
今でもトライグラフ受け入れないと駄目なんだろう
983ハノン ◆QZaw55cn4c (US 0H7d-p9PZ)
2022/07/31(日) 17:43:38.22ID:E3I5T4z5H >>981
C99 の C++ との互換性がまったく取れていない変てこ機能はさっさと削除してほしいものです
いまや私は C のソースを書くのに C++ コンパイラが通るか試してみる体たらく、あれらはいったいなんなんだ?
C99 の C++ との互換性がまったく取れていない変てこ機能はさっさと削除してほしいものです
いまや私は C のソースを書くのに C++ コンパイラが通るか試してみる体たらく、あれらはいったいなんなんだ?
984はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9a3e-dSCr)
2022/07/31(日) 19:20:45.67ID:9sXTRHUo0 今回「削除」になったのはいわゆるK&Rスタイルの関数定義くらいだな。
いずれ削除するということは以前から書かれてたし、
習慣的にも行儀が悪いという考え方が支配的だから
これで問題が起こるなら長い移行期間中に対応できてなかったほうが悪いと言ってよかろ。
いずれ削除するということは以前から書かれてたし、
習慣的にも行儀が悪いという考え方が支配的だから
これで問題が起こるなら長い移行期間中に対応できてなかったほうが悪いと言ってよかろ。
985デフォルトの名無しさん (ワッチョイ 7a63-dSCr)
2022/07/31(日) 19:35:38.56ID:n00x/A2v0 削除って事は、古いソースのコンパイルはもはや出来ないと言うことなんでしょうか
いや、なに、クラシックカーに乗ってみたい位の好奇心ですけど
いや、なに、クラシックカーに乗ってみたい位の好奇心ですけど
986アリ人間 ◆T6xkBnTXz7B0 (スフッ Sd9a-xqSD)
2022/07/31(日) 19:46:09.16ID:sdKo2iJ+d 歳をとるということ 〃
シワが増えるということ 〃
なのに
ぼくたち
私たちは 〃
なぜ、最新機種で進化の止まった古臭いコンパイラを使うのでしょうか
でしょうか
シワが増えるということ 〃
なのに
ぼくたち
私たちは 〃
なぜ、最新機種で進化の止まった古臭いコンパイラを使うのでしょうか
でしょうか
987はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9a3e-dSCr)
2022/07/31(日) 20:23:09.10ID:9sXTRHUo0 >>985
削除された機能を使っていればそういうことになるが、
そもそも C で書かれたプログラムなんてどこかしらで環境依存な部分があるもんだし、
よほど配慮されたものでない限り古いコードは素直には動かないのが普通だろう。
まあ C23 が出来たからと言って C89 (に対応したコンパイラ) が直ちに消滅するわけでもないし、
なんだかんだであと二十年くらいたっても C89 派がそれなりにはいそうな気がする。
削除された機能を使っていればそういうことになるが、
そもそも C で書かれたプログラムなんてどこかしらで環境依存な部分があるもんだし、
よほど配慮されたものでない限り古いコードは素直には動かないのが普通だろう。
まあ C23 が出来たからと言って C89 (に対応したコンパイラ) が直ちに消滅するわけでもないし、
なんだかんだであと二十年くらいたっても C89 派がそれなりにはいそうな気がする。
988デフォルトの名無しさん (ワッチョイ 16ae-1wwR)
2022/07/31(日) 20:35:31.51ID:1QnevV7r0 K&R CこそCの面白さの塊なんだけどな
GCCが「カバにダンスを踊らせるのはあまり面白くない」なんて言ってた人もいるように
歳月とともに雁字搦めになっていく流れは酷くつまらない
GCCが「カバにダンスを踊らせるのはあまり面白くない」なんて言ってた人もいるように
歳月とともに雁字搦めになっていく流れは酷くつまらない
989デフォルトの名無しさん (US 0H7d-p9PZ)
2022/07/31(日) 20:47:12.68ID:TVIRLEiRH >>988
でもね、C のコンパイラは C で記述してほしかったですね
確かにカバの調教は難しいのかもしれませんが
というか、gcc をコンパイルするためだけの c で書かれた c++ コンパイラって需要ありますかね?
でもね、C のコンパイラは C で記述してほしかったですね
確かにカバの調教は難しいのかもしれませんが
というか、gcc をコンパイルするためだけの c で書かれた c++ コンパイラって需要ありますかね?
990デフォルトの名無しさん (アウアウウー Sa09-gD8W)
2022/07/31(日) 20:51:31.04ID:PC792jYOa >>988
無理すんなよ
無理すんなよ
991蟻人間 ◆T6xkBnTXz7B0 (スフッ Sd9a-xqSD)
2022/07/31(日) 20:59:27.98ID:sdKo2iJ+d そろ次スレ
992デフォルトの名無しさん (ワッチョイ 7a63-dSCr)
2022/07/31(日) 21:03:23.63ID:n00x/A2v0 ラージモデルでFarポインタ使いまくったプログラム合ったけど、
今は流石に見るのも嫌だと思う
何言ってるか分からないと思うが、俺も分からない
今は流石に見るのも嫌だと思う
何言ってるか分からないと思うが、俺も分からない
993デフォルトの名無しさん (ワッチョイ 7a01-Jv5Y)
2022/07/31(日) 21:17:26.94ID:UwyiR8NW0 >>992
むしろnearポインタの方が面倒だと思うが...
むしろnearポインタの方が面倒だと思うが...
994デフォルトの名無しさん (オッペケ Sr05-5tLW)
2022/08/01(月) 08:38:31.30ID:wVsEVhkpr あり人間とかキチガイ、こっちでも頓珍漢なこと書いてるのか
995ハノン ◆QZaw55cn4c (ワッチョイ 25e6-p9PZ)
2022/08/01(月) 19:47:44.58ID:kaXTkJ9F0 >>992
ラージモデルの far ポインタでしょう?別に far とか書かなくても普通にポインタを書けば far ポインタになったはず
であれば、あとは 64kb の壁を意識してむやみにポインタのインクリメントをせずに上手に部分にわければなんとかなったでしょう
far ポインタでの経験はいろんな場所で活かせる貴重な体験だと思いますよ
私は試食版 LSI-C のスモールモデルで陽に far を指定して far ポインタをバリバリつかっていましたよ
スモールモデルだからコード領域はせまいけれども(near コールしか使えない)、far と書けばデータは 640KB までフルに使えましたし
ラージモデルの far ポインタでしょう?別に far とか書かなくても普通にポインタを書けば far ポインタになったはず
であれば、あとは 64kb の壁を意識してむやみにポインタのインクリメントをせずに上手に部分にわければなんとかなったでしょう
far ポインタでの経験はいろんな場所で活かせる貴重な体験だと思いますよ
私は試食版 LSI-C のスモールモデルで陽に far を指定して far ポインタをバリバリつかっていましたよ
スモールモデルだからコード領域はせまいけれども(near コールしか使えない)、far と書けばデータは 640KB までフルに使えましたし
996デフォルトの名無しさん (ワッチョイ 16ae-G1eK)
2022/08/01(月) 20:05:11.09ID:4CMby4Hu0 インテルのクソ設計でみんな迷惑してたってだけの話
K&R Cの楽しさとは全く何の関係もない
68kと86系は異次元の世界だった
K&R Cの楽しさとは全く何の関係もない
68kと86系は異次元の世界だった
997デフォルトの名無しさん (ワッチョイ 7a01-Jv5Y)
2022/08/01(月) 20:55:56.73ID:4h+jHRsn0 >>995
テキトー書く前に8086 メモリーモデル とか near far huge とかでググってから出直してこい
テキトー書く前に8086 メモリーモデル とか near far huge とかでググってから出直してこい
998ハノン ◆QZaw55cn4c (ワッチョイ 25e6-p9PZ)
2022/08/02(火) 07:34:13.90ID:QS3wPWC90 >>997
私の認識であってますよ
ラージモデルのデフォルトポインタ(データ・コードとも)は far ですし、スモールモデルはどちらも near
しかしスモールモデルでも far ポインタは far と陽に宣言すれば使えるんですよ…
私の認識であってますよ
ラージモデルのデフォルトポインタ(データ・コードとも)は far ですし、スモールモデルはどちらも near
しかしスモールモデルでも far ポインタは far と陽に宣言すれば使えるんですよ…
999デフォルトの名無しさん (スッププ Sd9a-sHoh)
2022/08/02(火) 11:58:06.82ID:ziGJzmHZd Windows16ビットのCでは16ビットハンドルを架空の構造体へのnearポインタとして実装してたな(#define STRICTした場合)
例えばデバイスコンテキストハンドルをビットマップハンドルに代入しようとするとtype mismatchエラーになってすぐわかる
STRICTでないと単なる本来の16ビット整数として扱われ混同しても通ってしまう
win32ではnearがないので普通の32ビットポインタになってしまいメモリがちょっともったいない
例えばデバイスコンテキストハンドルをビットマップハンドルに代入しようとするとtype mismatchエラーになってすぐわかる
STRICTでないと単なる本来の16ビット整数として扱われ混同しても通ってしまう
win32ではnearがないので普通の32ビットポインタになってしまいメモリがちょっともったいない
1000デフォルトの名無しさん (ワッチョイ faad-wcmX)
2022/08/04(木) 18:41:17.13ID:+TMVVsOn0 >>92push(保存)してpop(書き戻し)してるから結局pushしたときのデータになる
popとpushの間のややこしいとこはシカトな
popとpushの間のややこしいとこはシカトな
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 222日 6時間 29分 31秒
新しいスレッドを立ててください。
life time: 222日 6時間 29分 31秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【地震速報】青森県で震度6強 沿岸部に津波警報 ★6 [ぐれ★]
- 「日の丸にバツ印」掲げた大学生 あいまいな国旗損壊罪に「怖い」 The Mainichi [少考さん★]
- 【音楽】BARBEE BOYS・KONTAが事故で四肢麻痺を公表、新体制で活動は継続 [少考さん★]
- 中国「捜索レーダー起動は各国の通常の手法」 火器管制用か回答せず [蚤の市★]
- 【野球】野球の未来に危機感「マイナースポーツになる」 宮本慎也氏が開催…学童大会 [尺アジ★]
- 【訃報】声優・西村知道さん死去 「SLAM DUNK」安西先生役 9月に体調不良のため一時休業 [少考さん★]
- マヨネーズにわさび、山椒、卵の黄身、ラー油、オリーブオイルを入れてよく混ぜてください
- カメラのキタムラとかいう穴場
- 千晴とVIPの深夜の遊戯
- ぺこーら、地震で同僚が次々配信を止めるなか強行し続けるので悪目立ちするwww [268244553]
- 巨大地震 [957955821]
- ひろゆき「愛があるから人は苦しまなきゃいけないんだね」
