※ ChatGPTを利用し、要約された質問です(原文:C言語 ポインタと配列)
C言語のポインタと配列の関係について
このQ&Aのポイント
C言語のポインタと配列の関係について詳しく説明します。
また、このコードの `find = (char*)str;` の部分についても解説します。
さらに、`find` の解釈についても説明します。
#include <stdio.h>
/*
scanf("%c", &search);
ではなく
scanf(" %c", &search);
であることに注意する
*/
char *str_chr(const char *str, char c)
{
char *find;
find = NULL;
do {
if(*str == c) {
find = (char*)str;
break;
}
} while(*str++);
return(find);
}
int main(void)
{
char str[100] = {0};
char search;
char *find;
printf("文字列を入力してください:");
scanf("%s", str);
printf("検索する文字を入力してください:");
scanf(" %c", &search);
find = str_chr(str, search);
if(find == NULL) {
puts("検索した文字は見つかりませんでした。");
}
else {
printf("検索した文字 %c は\"%p\"にあります。\n", *find , find);
}
return(0);
}
このコードのfind = (char*)str;の (char*)str;の部分がどうなっているのかわかりません。
あとこのfindというのは&find[0]という解釈でいいでしょうか?
教えてくださいm(_ _ )m
お礼
わかりました、ありがとうございますm(_ _ )m