Comment convertir std::vector en tableau C (C-style array) en C++ ?
Bonjour à tous ! J'écris un programme en C++ et j'ai rencontré un problème. J'ai un std::vector<int> que je remplis avec des données, mais l'une des bibliothèques que j'utilise nécessite en entrée un tableau C classique (int*). Comment puis-je obtenir à partir du vecteur un pointeur brut vers ses données internes pour le passer à une fonction ?
Voici un exemple de mon code :
#include <iostream>
#include <vector>
void process_array(int* arr, size_t size) {
for (size_t i = 0; i < size; ++i) {
std::cout << arr[i] << " ";
}
}
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// Comment obtenir int* à partir de vec ?
// process_array(vec, vec.size()); // Erreur !
return 0;
}
J'ai entendu dire qu'il existe une méthode <