我正在开发一个使用CLIPS RULES ENGINE的 iPhone 应用程序。
我已经使用下面的代码成功地将它与 XCode 集成。
InitializeEnvironment();
Clear();
NSString *filePath = [[NSBundle mainBundle]
pathForResource:@"animal" ofType:@"clp"];
NSData *myData = [NSData dataWithContentsOfFile:filePath];
if (myData) {
char *clipsFileChar = (char *)[filePath cStringUsingEncoding:NSASCIIStringEncoding];
IncrementGCLocks();
Load(clipsFileChar);
Reset();
AssertString("(find-all-facts ((?f state-list)) FALSE)");
int numberRulesFired = Run(-1);
NSLog(@"Number of rules that fired: %d", numberRulesFired);
DecrementGCLocks();
}
else {
NSLog(@"Could not find file %@", filePath);
}
问题是当我运行我的应用程序时,它会从 line 进入无限循环int numberRulesFired = Run(-1);
。
如果您有任何想法,请帮助我.......谢谢.. :)