У меня есть простая программа, в которой я тестирую класс принтера.
-(void) setInkType {
NSMutableString *theInkType;
InkType typeOfInk;
char inkFromInput[50];
NSLog(@"What type of ink are you using?");
NSLog(@"Options are photoInk, lazerJet, regularInk");
fgets(inkFromInput,50,stdin);
theInkType = [[NSMutableString alloc] initWithUTF8String:inkFromInput];
NSLog(@"%@",theInkType);
if([theInkType compare: @"photoInk"]==true) {
typeOfInk.photoInk = 564;
NSLog(@"Your using a photo ink of type %d",typeOfInk.photoInk);
inkType.photoInk = typeOfInk.photoInk;
}
else { if ([theInkType compare: @"lazerJet"] == true) {
typeOfInk.lazerJet = 94;
NSLog(@"Your using a lazer toner of type %d",typeOfInk.lazerJet);
inkType.lazerJet = typeOfInk.lazerJet;
}
else { if ([theInkType compare: @"regularInk"] == true) {
typeOfInk.regularInk = 910;
NSLog(@"Your using a regular ink of type %d",typeOfInk.regularInk);
inkType.regularInk = typeOfInk.regularInk;
}
}
}
}
Когда я запускаю это, я могу войти в "photoInk" и "lazerInk", и я получаю правильный вывод.Почему, когда я набираю «normalInk», я получаю неправильный вывод?
Я думаю, что это могут быть мои {}, но я не совсем уверен.Я уже несколько часов чесал голову.
Если есть больше вкуса какао, я могу сделать его более гладким, дайте мне знать, пожалуйста.