C言語 文字列内の文字を検索 - string.h - [ strchr ]

2008.11.16 Sunday | by LRESULT


字列内の文字を検索するには、strchr()を使用します。


strchr
書式 char* strchr( const char *s, int c )
機能 文字列内の文字を検索
引数 const char *s : 検索元の文字列
int c : 検索する文字
戻り値 検索文字を最初に発見した位置のポインタを返し、
発見出来なかったときは、NULLを返します。





サンプルコード
文字列「ABCDEFGHIJKLMN」内から、文字「L」を検索して
最初に発見された位置を表示します。
#include <stdio.h>
#include <string.h>

int main(void)
{
  char *s = "ABCDEFGHIJKLMN";
  int c = 'L';
  char *ret;

  ret = strchr( s, c );
  if( ret != NULL ){
    printf( "%cを%d番目に発見しました¥n", c, ret - s );
  }
  else{
    printf( "%cは発見出来ません¥n", c );
  }

  return 0;
}



結果
Lを11番目に発見しました
と、表示されます。

strchr()の戻り値は発見した位置のポインタなので
文字列s の先頭アドレスからのポインタの引き算で位置を割り出します。

カテゴリ:C言語 string.h | 21:10 | comments(0) | trackbacks(0) | -


コメントする











この記事のトラックバックURL

トラックバック機能は終了しました。

トラックバック