以下はソースです。
https://pastebin.com/b4wtgP1u
発生している問題
全体のプログラム
の144から148行目
if (my_str2(buffer, "映画") && my_str2(buffer, "好き") && my_str2(buffer, "?")) {
movie = 1;
の部分は実行ファイルを開いた後に例えば「映画は好きですか?」と入力すると「はい、大好きで。」と答えるのですが、
なぜか少し文章を変えて「映画は好き?」と入力すると「すいません。映画は好き?とはなんですか?」と期待した返事がきません。 if (my_str2(buffer, "映画") && my_str2(buffer, "好き") && my_str2(buffer, "?"))より
「映画は好き?」という打ち込んだ文章はif (my_str2(buffer, "映画") && my_str2(buffer, "好き") && my_str2(buffer, "?"))の条件を満たしていると思うのですが、なぜでしょうか?
編集
それとも完全に文章が一致しないと関数my_str2は駄目な関数なのでしょうか?
だとしたら、一部が一致するだけでもメモからその一部を含んだ文章が出力されるような関数はないでしょうか?
編集 カズマさん、何か解決方法はないでしょうか。やはり一字一句メモに書いてある文字を打たないと解決できないのでしょうか?解決できずに苦しんでいます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/01 02:34 編集
2021/02/01 06:39