Skip to content

Scrrrr/C_Renshu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C言語の勉強したコードを載せます

予約語

auto  break  case  char  const  continue  default  do  double  else  enum
extern  float  for  goto  if  int  long  register  return  signed  sizeof
short  static  struct  switch  typedef  union  unsigned  void  volatile  while

API(Application Programming Interface)

何かを使ってプログラミングするときのインターフェイス。関数、マクロ、システムコールなど様々な物がAPIと呼ばれる。広義が広い。

read(2) write(2) open(2) close(2) perror(3)

lseek(2) dup(2) dup2(2) ioctl(2) fcntl(2)

プログラムができるまで

プリプロセス→コンパイル→アセンブル→リンク

プリプロセス

#includeしたファイルを結合して一つのコードにする。
gcc -Eでプリプロセスだけの結果を標準出力できる。

コンパイル

C言語のソースコードをアセンブリ言語に変化する。

アセンブル

アセンブリ言語をオブジェクトファイルに変化する。

リンク

オブジェクトファイルを実行ファイルやライブラリに変換する。

日本語文字列処理

ASCIIは1文字1バイトであるが、SHIFT-JISやUnicodeでは最低2バイトを必要とする。
これらのバイト数の違う文字列を扱うために2つの手法がある。

・ワイドキャラクタ
そのエンコード方式の最大の数だけ1文字に割り当てるバイト数を与える。

・マルチバイトキャラクタ
その文字に合わせてバイト数を変化させる。

関数ポインタ

戻り値の型 (*ポインタ変数名)(引数情報);
int (*ptr_func)(int, int) = NULL;

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages