掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.23884

文字列検索
投稿者---ペコポン(2005/10/29 13:59:29)


ごく、簡単な文字列検索のプログラムを作っていますが
このつくり方だと256文字までしかうまく検索できません。
このHPや本などで調べたのですがいきづまってしまいました。
どうすれば257文字以上を正しく検索できるのでしょうか?

#include <stdio.h>
#include <string.h>

#define FOUND 0
int main(void)
{
char a[512];
char b[11];
int n;
int m;
int i;
int cnt=0;

printf("文章(文字)を入力してください:");
scanf("%s", a);
printf("\n");

printf("見つけたい文字を入力してください:");
scanf("%s", b);

n = strlen(a);
m = strlen(b);

for(i = 0; i <= n - m; i++)
if (strncmp(&a[i], b, m) == FOUND) cnt++;

printf("%s は %d 個ありました。\n", b, cnt);

return 0;
}


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:文字列検索 23885 επιστημη 2005/10/29 15:45:12
<子記事> Re:文字列検索 23886 ぴかちゅう 2005/10/29 17:02:43
<子記事> Re:文字列検索 23887 まきじ 2005/10/29 18:38:24


No.23885

Re:文字列検索
投稿者---επιστημη(2005/10/29 15:45:12)


>このつくり方だと256文字までしかうまく検索できません。

なぜ? 理由がわかれば対処法も見えてくるでしょう。



この投稿にコメントする

削除パスワード

No.23886

Re:文字列検索
投稿者---ぴかちゅう(2005/10/29 17:02:43)


>ごく、簡単な文字列検索のプログラムを作っていますが
>このつくり方だと256文字までしかうまく検索できません。
>このHPや本などで調べたのですがいきづまってしまいました。
>どうすれば257文字以上を正しく検索できるのでしょうか?
うーん、ごくごく基本的な問題だと思うけどなぁ、、、
メモリの問題だと思うけど、、、
文字入力と時に全角と半角ではメモリーの消費はどうなるんだっけなぁ、、


この投稿にコメントする

削除パスワード

No.23887

Re:文字列検索
投稿者---まきじ(2005/10/29 18:38:24)


>このつくり方だと256文字までしかうまく検索できません。
>char a[512];
>char b[11];

2 バイト文字の場合の事でしょう。
1 バイト文字であれば、511 文字の中から検索できるのでは?


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧