C言語で謎だったことでこの度分かったこと
C言語に久しぶりに帰る(ちょっとだけ)
今これを読んでいて、プログラム例がCなので、久しぶりにCの文法などをチェックしてみている
ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道
- 作者: 青木峰郎
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2017/09/22
- メディア: 単行本
- この商品を含むブログを見る
これ、有名なやつですよね。HTML版で2013年くらいに一通りやったけど、全部忘れてました・・・
- 作者: MMGames
- 出版社/メーカー: 秀和システム
- 発売日: 2011/06/24
- メディア: 単行本
- 購入: 3人 クリック: 600回
- この商品を含むブログ (1件) を見る
今読むと分かりやすい!と思い、この度わかったポイントを書きます。
C言語で謎だったことでこの度分かったこと
このあたりのことが分かった。
- Cの関数の形式
[返り値のデータ型] [関数名]([引数]){ [関数の処理] return [返り値]; }
関数の最初に実行される関数はmainという名称にする
voidは返り値なし、引数を取らないの意味
モジュールのインポート(Pythonでいうimport)は下記の形式
#include <[ファイル名]>
include <stdio.h>のstdio.hは、標準入出力モジュールのことでstandard I/O header の略のこと
改行の"\n"と"¥n"は同じ。日本語キーボードの関係で¥マークを入力することがあるってだけ
%d は"%d指定子"と呼ばれる 数字→文字列 に変換する指示子
ポインタは、変数の格納メモリのアドレスを格納できる変数機能があり、エイリアス的につかう事が多い(らしい)(多分クラスや構造体を新オブジェクトとして作ったときに予め宣言しておいた継承元クラスや構造体の値とかをディープコピーしてくるという感じではないかな(まだ予想だけど))
c言語で作ったファイルは◯◯.c と ◯◯.h がある。◯◯.hは"ヘッダーファイル"と言って◯◯.cとかで定義した関数とかの重要箇所の概要だけ一覧にしたもの。stdio.hはヘッダーファイル。
今復習してみるとPythonの文法でもCと共通というか似てるところがありますね。
Cを初めて触った当時の回顧
当時は一度もアプリ作ったことがなかったので、Cの文法学んだけど、それからアプリ開発までの大きな溝を独学で埋められずにプログラミングはそれから3〜4年位塩漬けとなりました・・・当時はLAMPがメジャーな感じでしたが、Ruby on Railsの流行から、Python/Django, Go, Rust インフラもオンプレミスからAWSやGCPとどんどんここ数年でトレンドが変わってきていますね。