from electron 2 web

インターネットのリソースを無駄遣いして検索におけるUXを下げてごめんなさい

圧倒的文章力のNASAでゴミみたいなチラ裏のようなメモを量産してしまい全ての"Web開発者"にごめんなさい

C言語入門~printfで文字を表示してみよう~

C言語で画面を表示させる関数にprintfというものがあります。

今日はそれで文字を表示させてみましょう。



















なんてね

久々にprintf使ったので書式の確認とポインタの復習。

%s,string,%p,pointer(16),%d,10sin

ブログ。cポインタ

そもそもこのポインタは配列の一番最初'a'を指してる。だから*strは中身のaのascii,97だね。

んでstrはその("a"の)アドレス。

んで&str、これなに?

ポインタ自体のアドレスみたいな?

領域で判断するのが良さそう。

>&演算子は、配列全体のアドレスを返す。

正解っぽい。こういう場合の見分け方は実行時にメモリダンプ取ってセグメントとか確認するのが良さそう。

arr==&arr[0]

&arr[0] != &arr//&arr[0]はintのポインタ、&arrはint[]へのポインタ。

昔の俺のノートより

POINTER

感想のような何か

個人的には低レベルなC言語って3つの方向があると思うんだよね。

  • 一つ目は低レベルなapi

例えばprintfで言えばread,write。gitの配管コマンドみたいなね。

  • 2つめが低レベルなポインタ。

int *(*fptr[10])(int (*fptr2)(),char *argv[],int argc)={NULL};とかね。

昔の勉強ノート見てるとどうも昔の俺はこれが分かったらしい。普通にすげえ。意味不明なんだが。

また詳説Cポインタ(オライリー)読み直したいなあ。

  • 3つめが低レベルな言語。

つまりインラインアセンブラとか。

とりあえず俺の作ったネイティブc++のnpmでx86インライン汗を書きたい。ctfやってオペコードすこし覚えたしね。