Я пишу программу для записи значений карт в многомерный массив символов 52-точечного символа. Эта программа представляет собой один тестовый массив, который я буду записывать как функцию в основную программу позже.
В программе я инициализирую подсчет для цикла для 0
по 51
. Я использую оператор switch
, модулированный 13
, чтобы присвоить значение карты точке массива. Тем не менее, я получаю указатель ошибки на целочисленное преобразование, также как мне записывать значения во второе пятно в массиве?Несовместимый указатель на преобразование символов
#include <stdio.h>
int main()
{
char CardValue[52][6];
int i;
for (i=0;i<52;i++)
{
CardValue[i][6]=i;
CardValue[i];
switch (i%13)
{
case '0': CardValue[i][6] = "ACE";
break;
case '1': CardValue[i][6] = "2";
break;
case '2': CardValue[i][6] = "3";
break;
case '3': CardValue[i][6] = "4";
break;
case '4': CardValue[i][6] = "5";
break;
case '5': CardValue[i][6] = "6";
break;
case '6': CardValue[i][6] = "7";
break;
case '7': CardValue[i][6] = "8";
break;
case '8': CardValue[i][6] = "9";
break;
case '9': CardValue[i][6] = "10";
break;
case '10': CardValue[i][6] = "JACK";
break;
case '11': CardValue[i][6] = "QUEEN";
break;
case '12': CardValue[i][6] = "KING";
}
'CardValue [I] [6]' referes только один 'char' (тип' char'). '' ACE "' тип 'char *'. Более того, 'CardValue [i] [6]' ссылается на char вне вашего массива (вы набираете 'char CardValue [52] [6];' поэтому индексы находятся между [0-51] [0-5] – Fefux
Что делает строка 11 делает, если что-нибудь? 'CardValue [i];' Предыдущая строка имеет полу, поэтому я не думаю, что он должен что-либо делать. – Blacksilver
Пожалуйста, перед публикацией в SO показать некоторые исследовательские усилия и подумать над проблемой поиска, люди здесь рад помочь, но приятно приложить некоторые усилия в вашей проблеме, прежде чем размещать вопрос. Кроме того, не забудьте правильно отложить свой код. – elmazzun