C言語 ファイルの意味
C言語 文字列で分からない部分があるのでご教示お願いします。
内容は「文字列の検索」です。
#include<stdio.h>
#include<string.h>
int main(void)
{
char word[] = "abcabdabe";
char word2[] = "abd";
char *word3 = "ABD";
char *word4 = NULL;
printf("処理前の文字列:%s\n", word);
word4 = word;
word4 = strchr(word4, *word2);
while (word4 != NULL){
printf("'a'が見つかった場所からの文字列: %s<\n", word4);
if (strncmp(word4, word2, strlen(word2)) == 0) {
strncpy(word4, word3, strlen(word3));
}
word4 += 1;
word4 = strchr(word4, *word2);
}
printf("処理後のword4: %s\n", word);
return 0;
}
このプログラムの場合、word3とword4ではなぜ、*word3, *word4とポインタで設定するのでしょうか?
また、「word4 = strchr(word4, *word2)」と *word2のようにlここでポインタ指定するのは何故なのでしょうか?
お礼
御回答ありがとうございます。 wormholeさんは、 http://okwave.jp/qa/q6996802.html の質問にも答えて下さっていますね。 そちらの方が、今回の質問よりもより具体的なので、 そちらで引き続きよろしくお願い致します。