概ね方位不定だが多分割と偏っている
スポンサーサイト
--年--月--日 (--) | 編集 |
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


C 例題10 ポインタと文字列
2006年08月10日 (木) | 編集 |
ポインタを使って文字列をどうにかしてみるという例題だな。
勝利条件:
「文字列の長さを調べるプログラムを組めや」
「なお、\0は含まない」


攻略方法:

まずポインタ変数str、また、長さのカウント用に適当な整数型変数も宣言しておこう。

char *str;
int n;


次にstrに文字列の先頭アドレスを代入する。

str="Hello";

これまたとりあえずHelloにしておけばいいや。
後はstrから文字を順番に取り出してカウントする。文字列の最後に\0という印があるので

while (*str!='\0'){
 n++;
 str++;
}


strが\0になるまで*strのデータを参照し、カウントし、ついでに次の文字のアドレスを代入する為にstr++というループを繰り返せばOK。

pointer_str_ex.jpgpointer_str_ex2.jpg

こんな感じ。相変わらずシンプルやね。

更に、例によって文字列を入力出来るようにしてみた。

pointer_str_ex3.jpgpointer_str_ex4.jpg
ちょ、Hello

修正して実行。

pointer_str_ex5.jpg
今度はOK

全角だと駄目っぽいのは変わらず。
全角使えないとあまり面白いことは出来んのでつまらんな。
いずれはどうにかなりそうではあるが。


スポンサーサイト

コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。