У вас есть:
int arr[4] = {0, 1, 2, 3};
Хотите отредактировать его дальше?
arr[0] = 42;
// arr[] = {42, 1, 2, 3};
Хотите изменить все сразу?Есть:
for(int i = 0; i < 4; ++i)
arr[i] = i * 2;
// arr[] = {0, 2, 4, 6};
И не забудьте memset()
!
memset(arr, 42, 4);
// arr[] = {42, 42, 42, 42};
Хотите изменить все, кроме первого элемента на7
?
memset(&arr[1], 7, 4 - 1);
// arr[] = {42, 7, 7, 7};
Хотите узнать что-нибудь о указателях ?( Вот более полезная ссылка. )
Видите это?(Если вы не можете, пожалуйста, прекратите читать это. Спасибо!)
int *ptr = &arr[1];
Это эквивалентно:
int *ptr = arr + 1;
Что также эквивалентно:
int *ptr = arr;
ptr = ptr + 1;
Хорошо, теперь, когда мы это поняли, давайте покажем вам более эффективный цикл for, чем тот, который я делал выше:
int *ptr = arr;
for(int i = 0; i < 4; ++i)
{
*ptr = i << 2;
// i * 2 == i << 2
++ptr;
}
// arr[] = {0, 2, 4, 6};
Не то, чтобы вы так кодировали;Скорее всего, компилятор справится с этим за вас.
Хотите еще один ответ в виде серии вопросов?