2009-07-01から1日間の記事一覧

C言語を学び始めて

思えばC言語の勉強を始めてから今日で約2週間。言語仕様を理解するだけでそれだけの時間がかかるという事実。これからはアルゴリズムの勉強や各種色々なライブラリの学習が必要になってくる。まだまだ始まったばかりなんだよね。自分が何処までできるのか。…

65章 終了関数

C

http://www.geocities.jp/ky_webid/c/065.htmlとうとうここまで来ました。最後の章です。stdlib.hに定義されているexit関数は、それを呼び出した瞬間に即座にプログラムを終了させます。mainでのreturnと同じですね。exitの場合は何処でも呼び出せるのでいつ…

64章 文字列判定関係の関数

C

http://www.geocities.jp/ky_webid/c/064.htmlずらーっとありますね。ctype.hにて定義されているようです。ちょっと表にまとめてみます。 関数名 判定内容 islower() 小英字判定 isupper() 大英字判定 isalpha() 英字判定 isdigit() 数字判定 isxdigit() 16…

63章 数学系関数

C

http://www.geocities.jp/ky_webid/c/063.html数学関係の色々な標準ライブラリの紹介ですね。まとめるとこんな感じ abs関数(labs,fabs関数) ceil関数とfloor関数 pow関数 sqrt関数 sin,cos,tan関数 試しに使ってみます。 #include <stdio.h> #include <math.h> #include <assert.h> int </assert.h></math.h></stdio.h>…

62章 標準サーチ関数 bsearch

C

http://www.geocities.jp/ky_webid/c/062.htmlbsearchとはバイナリサーチ関数です bsearch(検索対象データ,対象配列,配列全体のサイズ,一要素のサイズ,サーチ関数ポインタ)という定義になります。また さて、バイナリサーチの仕組みを知っていれば分かると思…

61章 標準ソート関数 qsort

C

http://www.geocities.jp/ky_webid/c/061.html qsort(対象配列,配列全体のサイズ,一要素のサイズ,ソート関数ポインタ)このような定義になっている。第四引数に渡す関数ポインタは int 関数名(const void*, const void*);となっている。strcmpと同じで正、負…

VCのclでコンパイルするときに警告レベルを最大にする

C

今までずっと小さなコードばかり書いていたのでいちいちVC使うのが面倒臭くてclでコマンドラインからコンパイルしていました。でそうするとstdio.hとかincludeし忘れててもprintfが動くんですよね。なんだか嫌だなぁとは思いつつもそのままにしていたのです…

60章 インクルードガード

C

http://www.geocities.jp/ky_webid/c/060.htmlこれはヘッダファイルが別々の場所から何度も呼ばれないようにするためのロック処理みたいな物です。変数単位でよいならexternで宣言だけ書くということもできますが、そもそもヘッダファイルが2度以上呼ばれな…

59章 表明プログラミング

C

http://www.geocities.jp/ky_webid/c/059.htmlアサートというものが出てきました。これは「表明」と呼ばれるものです。使い方は簡単です。assertという関数(マクロ)が提供されるので真偽値を渡すだけです。表明、つまり、これは○○のはずだ!という条件を指…

58章 メモリ操作関数

C

http://www.geocities.jp/ky_webid/c/058.htmlメモリ操作と書いてますが、サンプル等を読む限り、ポインタに対して参照書き込みしてるのと同じようにしか見えないのですが、これはそういったプロセスをすっとばして直接書き込んでるということなのでしょうか…

57章 可変引数

C

http://www.geocities.jp/ky_webid/c/057.html引数の数を可変にできるということでしょうか。実は既にそういった可変引数を扱う関数を使ったことがあります。そうprintfですね。つまりあのような仕様の関数を定義できるということになります。これは楽しそう…

56章 再帰呼び出し

C

http://www.geocities.jp/ky_webid/c/056.html自分で定義した関数の中で、その定義した関数を再度呼ぶ。これを再帰といいます。ある種無限ループですね。どこで終了させるかがわかりにくいのが特徴です。 問題1 100から引数の値まで、1ずつ減らしながら画面…