Remplir tableau en C

Résolu
Bonjour à tous,

J'utilise un tableau de grande dimension, et j'aurais besoin de le remplir de la même valeur instantanément (donc pas de boucle for...).
Voici un exemple de ce que je cherche à faire :

unsigned char tableau[5] = {255, 255, 255, 255, 255} ;

Mais le tableau que j'utilise est beaucoup plus grand (et à 2 dimensions), et il serait peu convenable d'avoir 50 lignes de définition pour faire cela...

Est-il possible de ne taper qu'une fois la valeur pour remplir le tableau avec ?

Merci d'avance.

4 réponses

  1. Modérateur
    En fait écrire 50 instructions ou une boucle for ce sera pareil. Pour ce que tu veux faire, la logique serait d'utiliser une boucle for. En C++ si tu utilises des std::vector il est possible de dire avec quelle valeur initialiser chaque case, mais en arrière plan il fera quand même une boucle for.

    Une boucle for est quelque chose de rapide donc concrètement ce n'est pas gênant, même si ton tableau fait plusieurs milliers d'éléments.

    Bonne chance
    1. Merci pour ta réponse, je me posais effectivement cette question sur la réalisation interne de l'initialisation du tableau.
    2. bonjour,
      je suis débutante, tu peut m envoyé le code de ce problem (remplir un tableau par la meme valeur)
      et merci
    3. Modérateur
      #include <stdlib.h>
      
      int main() {
        unsigned i, n = 28;
      
        // Allouer le tableau en mémoire
        int *tab = malloc(n * sizeof(int));
      
        // Initialiser chaque case du tableau à 7
        for (i = 0; i < n; ++i) {
          tab[i] = 7;
        }
      
        // Libérer le tableau
        free(tab);
        return 0;
      }