Модификация массива Char, переданного в функцию - PullRequest
1 голос
/ 06 марта 2012

У меня есть функция, и я хочу изменить передаваемую ей cardString[], чтобы cardString[] содержал [charSuit, cardRank, '\0']:

void getCard(int row, int column, char cardString[]){
    PlayingCard myCard = myDeck.cardArray[row][column];
    char charSuit;
    char charRank;   

    if (myCard.getSuit() == CLUB)
        charSuit = 'C';
    else if (myCard.getSuit() == SPADE)
        charSuit = 'S';
    else if (myCard.getSuit() == HEART)
        charSuit = 'H';
    else if (myCard.getSuit() == DIAMOND)
        charSuit = 'D';
    if (myCard.getRank() == NINE)
        charRank = '9';
    else if (myCard.getRank() == TEN)
        charRank = 'T';
    else if (myCard.getRank() == JACK)
        charRank = 'J';
    else if (myCard.getRank() == QUEEN)
        charRank = 'Q';
    else if (myCard.getRank() == KING)
        charRank = 'K';
    else if (myCard.getRank() == ACE)
        charRank = 'A';
}

1 Ответ

2 голосов
/ 06 марта 2012

Нет однострочного способа назначить весь массив; вам нужно написать три оператора присваивания:

cardString[0] = charSuit;
cardString[1] = charRank;
cardString[2] = '\0';
...