Shammer's Philosophy

My private adversaria

2009-06-01から1ヶ月間の記事一覧

引数文字列変換改良版

C

引数を文字列にする実装として、引数の文字列を数値に変換する - Shammerismというのを書いてみたけれども、この実装だと数値以外が渡されても0として扱っていたので、文字列が数値かどうか判定する - Shammerismの実装を利用して書きなおした。 #include <stdio.h> </stdio.h>…

文字列が数値かどうか判定する

C

C には、isdigit という関数がある(ctype.h をインクルード)。これは、char の数値判定を行う関数。 しかし、一文字の数値判定は行えても文字列の数値判定を行える関数は見つけられなかったので自作。 簡単な内容だけれども・・・ #include <stdio.h> #include <ctype.h> #in</ctype.h></stdio.h>…

XCode デビュー?

せっかくMacを使っているんだし、ちょっとCocoaプログラミングでもやってみよう、と思って、 XCodeを起動してみた。しかし・・・ほとんどわからない。 完全に独立した文化?があるようだ。何かいろいろ作ってみたいなぁ。 動かしていると、 ・画面を作るIDE …

文字列の文字数をカウントする

C

コマンドラインで渡された引数は、とりあえずは文字列型として扱われる。この文字列を使っていろいろやることになりそうなので、文字列を扱う基本を抑えないと、ということで文字列を数えるやり方をメモ。string.h をインクルードして strlen 関数を使用すれ…

引数の文字列を数値に変換する

C

C ではどう書くのだろう、と思ったものの、パっと出てこないので書き残すことにしました。 atoi という関数を使用するようだ。使用するには、stdlib.h を include する必要がある。 #include <stdio.h> #include <stdlib.h> int main(int argc, char *args[]){ if( argc == 2 ){</stdlib.h></stdio.h>…

C言語Main関数の引数

C

今さらだけれど・・・よくわかっていなかったのでメモ。 Cだと次のように書く。 int main(int argc, char *argv[]) { int i; printf("コマンドとパラメータの合計数:%d", argc); for( i = 0 ; i < argc ; i++ ){ printf("%d つ目は、%s", i, argv[i]); } pr…

fopen-w

C

20090610 のブログで fopen の w+ 時の動作を確認してみたがよくわからなかったので、fopen を w モードで実行してみた。結果は同じように見える。 #include <stdio.h> #include <stdlib.h> int main(void){ FILE *fp; char s[1024]; if(( fp = fopen("xxxxx.txt", "w")) == NUL</stdlib.h></stdio.h>…

fopen-w+

C

fopen-r+ に続いて書いてみた。w+ の場合、エラーになることはないが常に上書きしてしまう。 これを使って何かの処理を書いて、消したくないデータを(バグで)消してしまうってことはありそうだ。 w と w+ の違いは、読み込みもできるという点。 #include <stdio.h> </stdio.h>…

fopen-r+

C

fopen の r+ の動作を試してみた。サンプルの内容はこんな感じ。 #include <stdio.h> #include <stdlib.h> int main(void){ FILE *fp; char s[1024]; if(( fp = fopen("xxxxx.txt", "r+")) == NULL ){ perror(NULL); exit(EXIT_FAILURE); } while( fgets(s, 1024, fp) != NULL )</stdlib.h></stdio.h>…

FILE 入出力

C

先日のサンプルでまた新しい関数が出てきた。ファイルを開く fopen と、開いたファイルを閉じる fclose 関数。開いたファイルは閉じないといけない、というのは、言語を問わず共通のこと。fopen 後、ファイルディスクリプタの値が返されて、その値に対して読…

perror 関数

C

先日書いた(というか引用した)サンプルで使ったことなかった記述があったのでそのメモ。perror という関数。エラーメッセージは、いつも単に printf で標準出力に出していたが、こういう関数も使用できるようだ。以下のリンクが見つかった。 perror引用。 …