>論理演算は短絡評価される規定がある
これってよく聞くし実験しても実際そうだけど
仕様書のどこに書いてあんのかいまだにわからん
ほんのちょっぴりだが気になる
C言語を学びたいんやが、まず何からやればいい?
2024/08/12(月) 10:09:33.57ID:2lKM0Yyl
28デフォルトの名無しさん
2024/08/12(月) 10:26:19.22ID:+jMHtzbv >>27
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2310.pdf
これの71ページ目 (PDFの84ページ目) の 6.5.13 Logical AND Operator の 4 の段落
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2310.pdf
これの71ページ目 (PDFの84ページ目) の 6.5.13 Logical AND Operator の 4 の段落
2024/08/12(月) 14:34:11.50ID:DCeOjIRt
すげー
2024/08/13(火) 08:15:36.04ID:6ajF2Nvb
>a+a++;
普通に、MISRA-C 違反
自己インクリメントは単独でしか使えない。
他の式と組み合わせてはならない
こういう事をやるプログラマがいるから、
Ruby には、この演算子が無い
Rubyなら、
a=2
p a += 1 #=> 3
普通に、MISRA-C 違反
自己インクリメントは単独でしか使えない。
他の式と組み合わせてはならない
こういう事をやるプログラマがいるから、
Ruby には、この演算子が無い
Rubyなら、
a=2
p a += 1 #=> 3
31デフォルトの名無しさん
2024/08/13(火) 09:25:41.71ID:qGcIneKd Pythonスレで嫌われたRubyおじさんがここにも来たか
CとRubyじゃ用途が違うので関係ないと思ったけど普通に来るんだな
一応、向こうのスレのテンプレートを示しておく
>・当スレにRubyのソースコード類を書くことを禁ず
>・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
>・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
CとRubyじゃ用途が違うので関係ないと思ったけど普通に来るんだな
一応、向こうのスレのテンプレートを示しておく
>・当スレにRubyのソースコード類を書くことを禁ず
>・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
>・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
3230
2024/08/14(水) 00:32:35.54ID:DeY7Wxx6 組み込みのmruby で、宇宙開発もある。
だから、C・Ruby を使える香具師も多い。
Elixir も組み込みある
本も出ている
Webで使えるmrubyシステムプログラミング入門、近藤宇智朗、2020/11
宇宙開発などの組み込み用、MicroPython, Lua, Squirrel の代替になる。
Ubuntu 18.04, C99 対応
九州大学などの人工衛星イザナギ・イザナミで使っている
この本に、Virtualbox, Vagrant を使う。
WSL はサポートしないと書いてあるけど、WSL2 でも使えるのでは?
だから、C・Ruby を使える香具師も多い。
Elixir も組み込みある
本も出ている
Webで使えるmrubyシステムプログラミング入門、近藤宇智朗、2020/11
宇宙開発などの組み込み用、MicroPython, Lua, Squirrel の代替になる。
Ubuntu 18.04, C99 対応
九州大学などの人工衛星イザナギ・イザナミで使っている
この本に、Virtualbox, Vagrant を使う。
WSL はサポートしないと書いてあるけど、WSL2 でも使えるのでは?
2024/08/19(月) 16:41:44.46ID:2CjpTy49
お前ら2022年の、しかもC#を間違えてC言語と書いてるスレで何やってんだ
34デフォルトの名無しさん
2024/08/20(火) 13:19:47.53ID:7gW0oenX 今の時代ならRustをやってからC/C++というのもアリかも知れん
35デフォルトの名無しさん
2024/09/19(木) 00:56:33.21ID:JdSAMEr4 ポインタの基礎を習得したフェルンだったが、関数ポインタという新たな壁にぶつかっていた。
「フリーレン様、関数ポインタって…一体何に使うんですか?
関数のアドレスを格納するって書いてありますが…。」
フェルンはノートに書かれたコードを眺めながら、首を傾げている。
フリーレンは微笑んで、地面にいくつかの魔法陣を描いた。
「フェルン、見てごらん。これらの魔法陣はそれぞれ異なる魔法を発動するものだ。
火の魔法、水の魔法、回復魔法…。これらの魔法陣を起動するには、
それぞれに対応した呪文を唱える必要があるだろう?」
「はい、そうです。火の魔法なら『Feuer』、水の魔法なら『Wasser』のように…。」
「では、もしも、一つの呪文で、状況に応じて異なる魔法を発動させたい場合はどうする?」
フェルンは少し考えてから答えた。
「えーっと…魔法陣を選ぶための別の呪文を唱えてから、
目的の魔法の呪文を唱える…とかでしょうか?」
「それも一つの方法だが、もっとスマートな方法がある。それが関数ポインタだ。」
フリーレンは地面に描かれた魔法陣の一つを指差した。
「関数ポインタは、魔法陣そのものではなく、
魔法陣を発動させるための呪文を格納するものだと言える。
つまり、状況に応じて異なる呪文を関数ポインタにセットすることで、
一つの呪文で様々な魔法を発動させることができるんだ。」
フェルンは目を輝かせた。
「なるほど! つまり、関数ポインタを使うことで、
実行する関数を動的に切り替えることができるんですね!」
「その通りだ。例えば、ゲームで敵の種類によって異なる攻撃パターンを実行したい場合や、
ソートアルゴリズムを状況に応じて切り替えたい場合などに、関数ポインタは非常に役立つ。」
「フリーレン様、関数ポインタって…一体何に使うんですか?
関数のアドレスを格納するって書いてありますが…。」
フェルンはノートに書かれたコードを眺めながら、首を傾げている。
フリーレンは微笑んで、地面にいくつかの魔法陣を描いた。
「フェルン、見てごらん。これらの魔法陣はそれぞれ異なる魔法を発動するものだ。
火の魔法、水の魔法、回復魔法…。これらの魔法陣を起動するには、
それぞれに対応した呪文を唱える必要があるだろう?」
「はい、そうです。火の魔法なら『Feuer』、水の魔法なら『Wasser』のように…。」
「では、もしも、一つの呪文で、状況に応じて異なる魔法を発動させたい場合はどうする?」
フェルンは少し考えてから答えた。
「えーっと…魔法陣を選ぶための別の呪文を唱えてから、
目的の魔法の呪文を唱える…とかでしょうか?」
「それも一つの方法だが、もっとスマートな方法がある。それが関数ポインタだ。」
フリーレンは地面に描かれた魔法陣の一つを指差した。
「関数ポインタは、魔法陣そのものではなく、
魔法陣を発動させるための呪文を格納するものだと言える。
つまり、状況に応じて異なる呪文を関数ポインタにセットすることで、
一つの呪文で様々な魔法を発動させることができるんだ。」
フェルンは目を輝かせた。
「なるほど! つまり、関数ポインタを使うことで、
実行する関数を動的に切り替えることができるんですね!」
「その通りだ。例えば、ゲームで敵の種類によって異なる攻撃パターンを実行したい場合や、
ソートアルゴリズムを状況に応じて切り替えたい場合などに、関数ポインタは非常に役立つ。」
36デフォルトの名無しさん
2024/09/19(木) 20:44:58.11ID:/CBFTgYs ていうかCが欠陥言語だから
void*でもいいんだけど
void*でもいいんだけど
2024/09/21(土) 02:55:15.27ID:2C51SPxe
フリーレン様、これはどういうことですか?
このソースはポインタがすべて void* です
このソースはポインタがすべて void* です
2024/09/21(土) 07:06:36.57ID:T1UE+DVT
「良いところに気がついたね、フェルン。
これはね、汎用的な関数ポインタの使い方を示しているんだ。」
フリーレンは地面に新たな魔法陣を描き、
その上に様々な種類のアイテム -- 剣、杖、薬草 -- を置いた。
「見ての通り、この魔法陣はどんなアイテムでも受け入れることができる。でも、
アイテムの種類によって、魔法陣の効果は変わるだろう?剣なら強化、
杖なら魔力充填、薬草なら効能増幅といった具合にね。」
「確かに…。でも、それはどうやって実現するんですか?魔法陣は一つなのに…」
「それが void* の役割なんだよ。void* はどんな型のデータも指し示せる、
いわば万能ポインタなんだ。この魔法陣は void* 型の引数を受け取ることで、
どんなアイテムでも受け入れることができる。
そして、受け取ったアイテムの種類を判別し、それに応じた処理を行うんだ。」
フリーレンは魔法陣に軽く触れ、光がアイテムを包み込んだ。
剣は輝きを増し、杖からは魔力が溢れ、薬草は鮮やかな緑色に輝いた。
「ソースコードに戻ると、void* 型の関数ポインタは、どんな型の引数と
戻り値を持つ関数でも指し示せる。ただし、使用する際には、キャストによって
具体的な型を指定する必要がある。魔法陣で言えば、アイテムの種類を判別して、
適切な処理を行う呪文を唱えるようなものだね。」
「なるほど…つまり、void* 型の関数ポインタは、どんな関数でも指し示せる代わりに、
使う時に注意が必要ということですね。」
「その通り。柔軟性が高い分、責任も大きくなる。
void* を使う際は、型安全性を確保するために細心の注意を払う必要があるんだ。」
フリーレンは地面の魔法陣を消し、フェルンの方を向いた。
「関数ポインタは強力なツールだが、使いこなすには練習と理解が必要だ。
様々な例を試してみて、その仕組みをしっかりと理解するんだよ。」
これはね、汎用的な関数ポインタの使い方を示しているんだ。」
フリーレンは地面に新たな魔法陣を描き、
その上に様々な種類のアイテム -- 剣、杖、薬草 -- を置いた。
「見ての通り、この魔法陣はどんなアイテムでも受け入れることができる。でも、
アイテムの種類によって、魔法陣の効果は変わるだろう?剣なら強化、
杖なら魔力充填、薬草なら効能増幅といった具合にね。」
「確かに…。でも、それはどうやって実現するんですか?魔法陣は一つなのに…」
「それが void* の役割なんだよ。void* はどんな型のデータも指し示せる、
いわば万能ポインタなんだ。この魔法陣は void* 型の引数を受け取ることで、
どんなアイテムでも受け入れることができる。
そして、受け取ったアイテムの種類を判別し、それに応じた処理を行うんだ。」
フリーレンは魔法陣に軽く触れ、光がアイテムを包み込んだ。
剣は輝きを増し、杖からは魔力が溢れ、薬草は鮮やかな緑色に輝いた。
「ソースコードに戻ると、void* 型の関数ポインタは、どんな型の引数と
戻り値を持つ関数でも指し示せる。ただし、使用する際には、キャストによって
具体的な型を指定する必要がある。魔法陣で言えば、アイテムの種類を判別して、
適切な処理を行う呪文を唱えるようなものだね。」
「なるほど…つまり、void* 型の関数ポインタは、どんな関数でも指し示せる代わりに、
使う時に注意が必要ということですね。」
「その通り。柔軟性が高い分、責任も大きくなる。
void* を使う際は、型安全性を確保するために細心の注意を払う必要があるんだ。」
フリーレンは地面の魔法陣を消し、フェルンの方を向いた。
「関数ポインタは強力なツールだが、使いこなすには練習と理解が必要だ。
様々な例を試してみて、その仕組みをしっかりと理解するんだよ。」
2024/09/21(土) 12:42:30.03ID:pEk1QATs
何そのフェルンとかフリーレン?
2024/09/24(火) 10:34:46.72ID:/2yiAcKT
どんな型で来るか分からないから、とりあえずvoid*で受けとけ
って感じだろ?
って感じだろ?
2024/09/24(火) 14:45:01.61ID:t1wxu4v8
v o i d * 受け・・・ 見事な・・・
42デフォルトの名無しさん
2024/09/26(木) 10:56:48.17ID:R5lWYvWF C: void * で良いよね!
C++: void * はヤバイから警告厳しくしようぜ
Java/Smalltalk: おい C++ お前共通の祖先無いやん
C++: あっしまっ・・・
C++: void * はヤバイから警告厳しくしようぜ
Java/Smalltalk: おい C++ お前共通の祖先無いやん
C++: あっしまっ・・・
2024/10/27(日) 09:26:18.78ID:MEhX5xjc
関数ポインタはvoid*でなくちゃんと方指定したほうがいい
形チェックしてくれるから
形チェックしてくれるから
レスを投稿する
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★2 [蚤の市★]
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ ★2 [蚤の市★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 【テレビ】粗品「THE W」バッサリ「おもんない、レベル低い」審査員就任で「日テレが“血の海”に…」 [湛然★]
- 死にてえやつこい
- 立憲民主党を支持している人たちって何を思って支持しているの?
- 【朗報】アメリカ、貿易赤字が市場予想を超える大幅縮小WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
- 【東京新聞】「偽サッチャー」「自滅的」「時代遅れ」高市首相の経済政策を海外メディアが酷評www [718678614]
- 【悲報】維新の政治資金でガールズバー、高市首相「良いか悪いかは国民の皆さまが判断されること」 [115996789]
- 中国人、ガチ超正論。「日本人がアイヌに対してやったことを『問題ない』とするなら、中国が日本人に同じことをしても文句ないだろう?」 [314039747]
