meideru blog

meideruが書いているブログです。主に電子工作・プログラミング・ガジェット類などを中心に記事を書いています。

C言語で住所録を作ってみました

      2016/11/18

みなさん、ごきげんよう( ´∀`)

練習も兼ねて、C言語で住所録を書いてみました。GUIも何もないCUIベースの住所録です。

今日は、ソースコードを貼りたいと思います\(^o^)/

ソースコード

GitHub

GitHubにもアップしてありますので、そちらからのクローンも可能です。

GitHub → https://github.com/meideru/AddressBook_CUI

ソースコード

600行前後で書けました。

十分にデバッグして確認していないので、バグがある可能性があります(-_-;)

実行するときは注意してください(-_-;)

仕様

登録・閲覧・検索・削除の4つができます。

登録

住所録の登録は、番号(管理番号)・グループ名・名前・住所・電話番号を登録できます。

閲覧

登録してある住所録の一覧を表示できます。

検索

検索は、番号・グループ名・名前・住所・電話番号のどれかのキーで、できます。

一致するものを全て一覧表示します。

削除

一覧で表示するものから選んで、削除できます。

セーブとロードについて

セーブとロードは外部ファイルにて行います。

文頭のほうに書いてある「char *path = “address.dat”;」を書き換えれば、任意のディレクトリに任意のファイル名で保存できます。

問題点

登録情報に入力できる項目は512バイトまで

登録できる番号・グループ名・名前・住所・電話番号は512バイトまでです。(ヌル文字も含むので、正確には511バイトまでです。)

これ以上を超えると、バッファオーバーして誤動作します(-_-;)

極端に登録件数が多くなりすぎるとメモリが確保できなくて動作しなくなる恐れがあります

一覧の表示も削除も何もかもすべての動作は、一旦、ファイルのデータをPC上のバッファに移して実行しています。

なので、極端に登録件数が多くなり過ぎると、ファイルサイズが大きくなって、メモリが確保できなくなって、動作しなくなる恐れがあります。

まぁ、そこまで極端に多く登録する人は居ないと思うので、平気だと思いますが(^_^;)

 

ノシ

【Windows API】住所録のソフトを作ってみた
少し前に勉強のためにWindows API (Win32API)を利用して住所録(電話帳?)っぽいソフトウェアを作っているという話をしました。 とりあえず、一通り完成したのでソースコードをアップしたいと思います!GUIなどGUI(グラフィカルユーザインタフェース)は、以...

 - プログラミング