0

ちょっとした絞首刑執行人のアプリケーションを書いて、ロープを少し学ぼうとしています。必要なものはほとんど揃っています。ただし、(古い C の方法を使用して) ユーザーに文字を入力するように求め、それを に変換する関数を用意していNSStringますNSString

ただし、NSString関数から (ポインター) を返し、それを main で使用して他の関数に渡す必要があります。

#import <Foundation/Foundation.h>

#define WORD_LIST_SIZE 3

void displayBlanks(float numChars);
NSString * askUserForLetter();

int main(int argc, const char * argv[])
{

@autoreleasepool {

    NSString * userLetter;

    int wrongCount = 0;
    int rightCount = 0;

    int randomWordIndex;
    float lettersInWord;

    NSString *wordList[WORD_LIST_SIZE];
    wordList[0] = @"dog";
    wordList[1] = @"bike";
    wordList[2] = @"plane";


    //
    //generates random index for word
    randomWordIndex = arc4random() % WORD_LIST_SIZE;


    //
    //gets the length of the random word
    lettersInWord = [wordList[randomWordIndex] length];


    //
    //Display title and blank
    printf("Guess the letters! Be careful! You may get hung! \n\n");
    displayBlanks(lettersInWord);


    //
    //ask for user letter the first time, return NSSTring 'userLetter'
    askUserForLetter();

    /*
     while (wrongCount < 9 && rightCount < lettersInWord) {
        if ([wordList[randomWordIndex] rangeOfString:userLetter].location != NSNotFound) {
            NSLog(@"Correct!");
            askUserForLetter();
            rightCount++;
        }
        else{
            NSLog(@"Wrong!");
            askUserForLetter();
            wrongCount++;
        }
    }
     */

    NSLog(@"Your letter is: %@", userLetter);


}
return 0;
}

void displayBlanks(float numChars){
int i;
for (i = 0; i < numChars; i++) {
    printf(" _ ");
}
printf("\n\n");
}


NSString * askUserForLetter (){
char userTry;

printf("Enter a letter you think is in the word: ");
scanf("%c", &userTry);
NSString * userGuess = [NSString stringWithFormat:@"%c", userTry];

return userGuess;
}
4

0 に答える 0