How to remove an element at a specific index from an array with C++

1 Answer

0 votes
#include <iostream>

void removeElement(int arr[], int& size, int index) {
    if (index < 0 || index >= size) {
        std::cout << "Index out of bounds" << std::endl;
        return;
    }

    // Shift elements to the left
    for (int i = index; i < size - 1; ++i) {
        arr[i] = arr[i + 1];
    }
    
    // Optionally, set the last element to 0 or some other value
    arr[size - 1] = 0;

    // Decrease the size of the array
    size--;
}

int main() {
    int arr[] = {4, 9, 8, 6, 5, 7, 1};
    int size = sizeof(arr) / sizeof(arr[0]);
    int indexToRemove = 2; 
    
    removeElement(arr, size, indexToRemove);

    for (int i = 0; i < size; ++i) {
        std::cout << arr[i] << " ";
    }
}


  
/*
run:
  
4 9 6 5 7 1 
  
*/

 



answered Feb 20, 2025 by avibootz
edited Feb 20, 2025 by avibootz

Related questions

1 answer 92 views
1 answer 200 views
1 answer 94 views
1 answer 105 views
1 answer 168 views
2 answers 294 views
2 answers 181 views
...