新入社員takuan
vimでポチポチとC言語研修しています
最近は画面分割やタブの開き方を覚えたので、レベル1は上がったかな?
今日は文字列ポインタをやっつけたぜ!
どうやっつけたのか?
よくあるこんな文字列配列
このやろーを関数に渡して、文字の比較処理をやりたかった。
コメント行の検知をやりたかった。
'/'と'/'が続けてやってきたら、キタコメント!教えてくれる関数。
ぐぬぬ
つか実際ちゃんとわかっているのかな?
#include <stdio.h> int main() { char a[16] = "int a=0 //init\n"; if(!isComment(a)) printf("コメントあるっす"); return 0; }
//関数側 int isComment(char *a) { while(*a!='\0'){ if((*a=='/')||(*(a+1)=='/')){ return 0; } a++; } return 1; }
//もしくは・・・ int isComment(char a[16]) { int i=0; while(a[i]!='\0'){ if((a[i]=='/')||(a[i+1]=='/')){ return 0; } i++; } return 1; }
あれ、後者ができなくて悩んでいたんだけどなんでだろう…
考えれば、かなり当たり前のこと…
なぜかこれですごく悩んでました、うーん
ってか本当になんで悩んでいたんだろう(笑)そんなポインタ知らなくても後者の方法使えばできるではないか…
うみゃー(´・ω・`)