tec memo

メモです。

2016-04-10から1日間の記事一覧

C言語: NULLポイント

ポインタ変数は宣言直後はでたらめな値が格納されているので、このまま利用するのはバグとなり危険。 これを防ぐために、アドレスを代入したかどうかを区別する必要がある。 NULL をポインタ変数に代入しておくことで、区別をつけることができる。 書き方 in…

C言語: ポインタ、事はじめ

ポインタ型 アドレスを記憶する変数の型。 他の型と合体して型を生成する。 ポインタ値 変数のアドレスの値のこと。 ポインタ変数の宣言 int *p; int* p; どちらも同じ。 int* p1, p2; と書いた場合、p2はint型になる。そのため、変数の前に*をつけて明示し…

C言語: メモリーのアドレスを知る。

変数が格納されている、メモリ上のアドレスを知るには printf に %p で表示できる。 変数には、&をつける。配列のアドレスを知りたい場合は、&は不要。 #include <stdio.h> int main(void) { int i1, i2, i3; printf("i1(%p)\n", &i1); printf("i2(%p)\n", &i2); prin</stdio.h>…

C言語のキーボードからの文字列の入力

C言語で、キーボードからの文字列の入力を処理するには、 scanf を使う。 #include <stdio.h> int main(void) { char str[32]; scanf("%s", str); printf("%s\n", str); return 0; } 上記ファイルを作成して、gcc or cc でコンパイルしたのちに実行する。 入力待ち受</stdio.h>…

C言語のプロトタイプ宣言

自作関数を作成する。 sum関数を作成する。 #include<stdio.h> int main(void) { sum(); /* sum関数を呼び出す */ return 0; } int sum(void) { printf("%d\n", (1 + 100) * 100 /2); return 0; } これをコンパイルしてみると以下のようなエラー。 sample2.c:6:5: war</stdio.h>…