C言語を学びたいんやが、まず何からやればいい? (43レス)
1-

1: 2022/02/22(火)13:20 ID:XXijF8a2(1) AAS
プログラミング初心者ワイ
JSでもPYでもなくC言語を学びたい。
C言語を使ってUnityでゲームを作りたいんや。
Macbookは持ってるんやけどまずどうすれば始められるんや?
YouTubeとかで調べても専門用語とか理解できんこと多くて分からんわ。
この板やったらプログラミング有識者いっぱいおるやろと思ってスレ立てた。
2
(1): 2022/02/22(火)18:56 ID:AqlhodQR(1) AAS
まずこのスレの削除依頼から
3: 2022/02/22(火)19:25 ID:EUVG2bnU(1) AAS
>>2
やめたれw
4: 2022/02/22(火)22:09 ID:25akAg1H(1) AAS
Unityの動作基盤であるLinuxカーネルのソースコードを半年ROMってると
段々分かってくるから、そうしたらカーネルの開発に参加できるようになってくる
5: 2022/02/22(火)23:08 ID:i58TpJdZ(1) AAS
コードウォリアーおすすめ
6: 2022/02/23(水)07:41 ID:sJCin9r3(1) AAS
そのやりたい事をググって調べればいいだろ
だから無能なんだよ
7: a4 2022/02/23(水)10:33 ID:06useS9K(1) AAS
プログラミングの本を100冊読みながら、実際に沢山ゲームを書けばいいですよ。
8: 2022/02/23(水)14:34 ID:t2DTQdCd(1) AAS
c#じゃあかんの?
c#ならUdemyの教材買えば、マリオ的なやつなら一週間で作れる
9: 2022/02/27(日)16:49 ID:J4nNjjR1(1) AAS
K&Rを買って完全に理解できるようになればC言語完全に理解したってことだ
10: 2022/02/27(日)23:36 ID:/IzO/XXN(1) AAS
Cを理解すればオブジェクト指向でゲームを作ることができるけど、Unityが使えるようになるわけではない。
他人が作ったライブラリの仕様に従うのは、また違った難しさがある。
11: 2022/02/28(月)08:52 ID:ZlP/yCwh(1) AAS
何言ってんだこのバカ
12
(1): 2022/03/12(土)00:41 ID:Jkql8tQc(1) AAS
俺のイメージでは
C言語はELPの展覧会の絵みたいなもんよ
13: 2022/03/13(日)08:39 ID:t7UEl8YS(1) AAS
貼っとくね。

0からの、超初心者C言語相談室
2chスレ:tech

1デフォルトの名無しさん2021/05/19(水) 01:34:14.03ID:OYngDuIu
何にも知らない0からの出発、超初心者のためのC言語相談室

0からの、超初心者C++相談室
2chスレ:tech

1デフォルトの名無しさん2018/11/12(月) 14:55:13.35ID:Tf74ZWQr
何にも知らない0からの出発、超初心者のためのC++相談室
14: 2022/03/13(日)19:15 ID:LXKFwTPa(1) AAS
オブジェクト指向もCで自分で実装した方がすぐわかるよ
15: 2022/03/13(日)23:27 ID:rKh4Srjl(1) AAS
何言ってんだこのバカ
16: 2022/03/15(火)11:47 ID:2+ErS/E2(1) AAS
UnityはC#がメインだから
Unityを使いたいならC#から学ぶ方がいいと思う
C言語が使いたいならC言語ベースのエンジンを選んだほうがいいと思う
17: 2022/04/24(日)04:47 ID:/nn9hjCc(1) AAS
>>12
おもろいな。
俺は80年代ポップスのPWLなイメージ。

ELPはアセンブラかなぁ
18: 2024/02/27(火)17:50 ID:81LB4MQJ(1) AAS
Unityでぐぐれカス
19: 青木康善 2024/08/09(金)09:08 ID:FZEpuz0a(1/3) AAS
C言語の構造体は、オブジェクト思考に似ているような。とりあえず、カーニハンリッチーのプログラミング言語Cという書籍を買い、たくさん読みまくってから、アンサーブックを買います。まさか、C言語で、ゲームが作れるとは、知りませんでした。その際、メモリ管理などのポインタはどう使うのか興味あります。
20: 青木康善 2024/08/09(金)09:13 ID:FZEpuz0a(2/3) AAS
せいぜい、chat GPTに聞いて、javaで、ドラムマシンのソースコード眺めたくらいですが、javaのオブジェクト思考とかが邪魔なような。そもそも、オブジェクト思考は、僕には、例えば、abstractとか、使うのは面倒です。いや、C言語は、charしか文字の型が無いような。enumとかは、列挙か。しかし、APIにしろ、本にしろ、いわゆる最近の生成aiも、いちいちコーディングする際に、入力して参照してたら、納期に間に合わないし、ならば、プログラミング言語Cを読みまくります。
21: 青木康善 2024/08/09(金)09:16 ID:FZEpuz0a(3/3) AAS
やはり、構造体でしたか。オブジェクト思考っぽいのは。
22: 2024/08/09(金)11:50 ID:NZIFRm78(1) AAS
chatGPTとかのAIも進歩したから
これからはC言語が見直されるんだろうな
23
(1): [sega] 2024/08/12(月)01:43 ID:2lKM0Yyl(1/2) AAS
int a = 1;
int b = a+a++;
printf("a=%d, b=%d\n", a,b);
これなんでbが3になるの? 高知インクリメントってその行が終わってから発動すんじゃなかったん?
24: 2024/08/12(月)08:03 ID:+jMHtzbv(1/4) AAS
>>23
それは評価順が未規定なのでコンパイラによって結果は変わり得るし、基本的に避けるコードですね
後置インクリメントは「元の値を返した後に加算される」で、そのタイミングは正確には行の終わりじゃなくて式 (a++の部分) の評価時

つまり a + a++ は「a++ は1を返す」と評価した後にaがインクリメントされるので、評価順によっては左側のaが2になり得る
x + y でxを先に評価するというルールはなくて、例えば func(x) + (y + z) は y + z の計算が func(x) より先に行われても問題ないし、それはコンパイラ次第
25: 2024/08/12(月)08:16 ID:+jMHtzbv(2/4) AAS
コンパイラのワーニングレベルを上げると警告を出してくれると思うので、有効にすると良いと思う
慣れてる人でも「これはこの動作になるはず」と思い込んでバグに繋がることはあるし、しかもこの手のものは原因を見つけづらいので
26: 2024/08/12(月)08:29 ID:+jMHtzbv(3/4) AAS
b= func(a) + a++;
なんかも危ない
見かけ上多くの人はfuncの引数は加算前のaだと思い込むし、 b = a++ + func(a); はその逆だと思うけど、実はどちらも保証されてない

逆に論理演算は短絡評価される規定がある
z = x && y;
は x が FALSEの時点で全体の決まるので、その場合にyは評価されないことが規定されている
z = x != NULL && func(*x);
が安全なのもこれが理由
27
(1): 2024/08/12(月)10:09 ID:2lKM0Yyl(2/2) AAS
>論理演算は短絡評価される規定がある
これってよく聞くし実験しても実際そうだけど
仕様書のどこに書いてあんのかいまだにわからん
ほんのちょっぴりだが気になる
28: 2024/08/12(月)10:26 ID:+jMHtzbv(4/4) AAS
>>27
外部リンク[pdf]:www.open-std.org
これの71ページ目 (PDFの84ページ目) の 6.5.13 Logical AND Operator の 4 の段落
29: 2024/08/12(月)14:34 ID:DCeOjIRt(1) AAS
すげー
30
(1): 2024/08/13(火)08:15 ID:6ajF2Nvb(1) AAS
>a+a++;
普通に、MISRA-C 違反

自己インクリメントは単独でしか使えない。
他の式と組み合わせてはならない

こういう事をやるプログラマがいるから、
Ruby には、この演算子が無い

Rubyなら、
a=2
p a += 1 #=> 3
31: 2024/08/13(火)09:25 ID:qGcIneKd(1) AAS
Pythonスレで嫌われたRubyおじさんがここにも来たか
CとRubyじゃ用途が違うので関係ないと思ったけど普通に来るんだな
一応、向こうのスレのテンプレートを示しておく

>・当スレにRubyのソースコード類を書くことを禁ず
>・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
>・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
32: 30 2024/08/14(水)00:32 ID:DeY7Wxx6(1) AAS
組み込みのmruby で、宇宙開発もある。
だから、C・Ruby を使える香具師も多い。
Elixir も組み込みある

本も出ている

Webで使えるmrubyシステムプログラミング入門、近藤宇智朗、2020/11

宇宙開発などの組み込み用、MicroPython, Lua, Squirrel の代替になる。
Ubuntu 18.04, C99 対応

九州大学などの人工衛星イザナギ・イザナミで使っている
省2
33: 2024/08/19(月)16:41 ID:2CjpTy49(1) AAS
お前ら2022年の、しかもC#を間違えてC言語と書いてるスレで何やってんだ
34: 2024/08/20(火)13:19 ID:7gW0oenX(1) AAS
今の時代ならRustをやってからC/C++というのもアリかも知れん
35: 2024/09/19(木)00:56 ID:JdSAMEr4(1) AAS
ポインタの基礎を習得したフェルンだったが、関数ポインタという新たな壁にぶつかっていた。
「フリーレン様、関数ポインタって…一体何に使うんですか?
関数のアドレスを格納するって書いてありますが…。」
フェルンはノートに書かれたコードを眺めながら、首を傾げている。

フリーレンは微笑んで、地面にいくつかの魔法陣を描いた。
「フェルン、見てごらん。これらの魔法陣はそれぞれ異なる魔法を発動するものだ。
火の魔法、水の魔法、回復魔法…。これらの魔法陣を起動するには、
それぞれに対応した呪文を唱える必要があるだろう?」

「はい、そうです。火の魔法なら『Feuer』、水の魔法なら『Wasser』のように…。」

「では、もしも、一つの呪文で、状況に応じて異なる魔法を発動させたい場合はどうする?」
省14
36: 2024/09/19(木)20:44 ID:/CBFTgYs(1) AAS
ていうかCが欠陥言語だから
void*でもいいんだけど
37: 2024/09/21(土)02:55 ID:2C51SPxe(1) AAS
フリーレン様、これはどういうことですか?
このソースはポインタがすべて void* です
38: 2024/09/21(土)07:06 ID:T1UE+DVT(1) AAS
「良いところに気がついたね、フェルン。
これはね、汎用的な関数ポインタの使い方を示しているんだ。」
フリーレンは地面に新たな魔法陣を描き、
その上に様々な種類のアイテム -- 剣、杖、薬草 -- を置いた。
「見ての通り、この魔法陣はどんなアイテムでも受け入れることができる。でも、
アイテムの種類によって、魔法陣の効果は変わるだろう?剣なら強化、
杖なら魔力充填、薬草なら効能増幅といった具合にね。」

「確かに…。でも、それはどうやって実現するんですか?魔法陣は一つなのに…」

「それが void* の役割なんだよ。void* はどんな型のデータも指し示せる、
いわば万能ポインタなんだ。この魔法陣は void* 型の引数を受け取ることで、
省15
39: 2024/09/21(土)12:42 ID:pEk1QATs(1) AAS
何そのフェルンとかフリーレン?
40: 2024/09/24(火)10:34 ID:/2yiAcKT(1) AAS
どんな型で来るか分からないから、とりあえずvoid*で受けとけ
って感じだろ?
41: 2024/09/24(火)14:45 ID:t1wxu4v8(1) AAS
v o i d * 受け・・・ 見事な・・・
42: 2024/09/26(木)10:56 ID:R5lWYvWF(1) AAS
C: void * で良いよね!
C++: void * はヤバイから警告厳しくしようぜ
Java/Smalltalk: おい C++ お前共通の祖先無いやん
C++: あっしまっ・・・
43: 2024/10/27(日)09:26 ID:MEhX5xjc(1) AAS
関数ポインタはvoid*でなくちゃんと方指定したほうがいい
形チェックしてくれるから
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.340s*