Это, вероятно, связано с указателями C, потому что это проблема с массивом.C присвоить индекс массива другому
Можно ли назначить индекс одного массива в другой:
int main()
{
char a[10];
char b[3] = {'a', 'b', 'c'};
int num = 1;
a[1 + num] = b[0];
int i = 0;
for(i; i < 3; i++)
printf("%s", a[i]);
return 0;
}
Я думаю, что выход должен быть какой бы. которые я думаю, что было бы [(NULL), (NULL), а]
EDIT
сказать, что я добавить целочисленный массив с приведенным выше кодом:
int c[3] = {1, 2, 3};
У меня возникли проблемы с хранения значений в массиве а когда я пытаюсь сделать что-то вроде этого:
a[1 + c[0]] = b[0];
это в конечном итоге работает, как хорошо ...
Оказалось, что это была не моя проблема, спасибо за помощь, хотя
Каков ваш желаемый результат? –
'printf ("% s ", a [i]);' не должно быть 'printf ("% c ", a [i]);'? – John3136
Вы хотите использовать '% c' не'% s'. Кроме того, вы должны инициализировать массив 'a', иначе вы будете печатать два неинициализированных символа. – JS1