CLIPS を C 言語プログラムに組み込みました。たとえば、C 言語プログラムから使用できる特定のスロット値を変更するなど、事実を変更したいと考えています。そうでなければ、目標を実現するためにすべての事実を消去し、新しい事実を主張しなければなりません。
アイデアや提案をありがとう
Advanced Programming Guide のセクション 4.4 ( http://clipsrules.sourceforge.net/OnlineDocs.html ) には、ファクトで使用できる関数のリストがあります。『基本プログラミング ガイド』のセクション 12.9.12 にあるファクト セット クエリと分散アクションは、C プログラムからファクトを取得して操作する場合にも役立ちます。たとえば、次の関数呼び出しを使用して、age スロットの値が 18 より大きいすべての person deftemplate ファクトを取得できます。
DATA_OBJECT result;
Eval("(find-all-facts ((?p person)) (> ?p:age 18))",&result);