Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème sur mon code (langage C avec SDL2)

Sujet résolu
    22 juin 2020 à 1:10:54

    Bonjour,

    J'ai écrit un petit code pour tester SDL2 mais cela me met un erreur pendant l’exécution:

    INFO: Erreur: Changement de couleur >>> Invalid renderer

    Voici mon code:

    '''c

    #include<stdio.h>
    #include<stdlib.h>
    #include<SDL.h>

    voidErreur(char *erreur);

    intmain(intargcchar *argv[])
    {
    if (SDL_Init(SDL_INIT_VIDEO) < 0)
    Erreur("Initialisation de SDL");

        SDL_Window *fenetre = SDL_CreateWindow("Fenêtre principale", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 8006000); // On rée la fenêtre
    if (fenetre = NULL)                                                                                                        // On vérifie qu'il n'y a pas d'erreur lors de la création de la fenêtre
    Erreur("Creation de la fenetre");

        SDL_Renderer *rendu = SDL_CreateRenderer(fenetre, -1, SDL_RENDERER_ACCELERATED); // On crée le rendu
    if (rendu = NULL)                                                                // On vérifie qu'il n'y a pas d'erreur lors de la création du rendu
    Erreur("Creation du rendu");

    if (SDL_SetRenderDrawColor(rendu, 00255, SDL_ALPHA_OPAQUE) < 0// On définie une couleur de rendu
    Erreur("Changement de couleur");

    if (SDL_RenderClear(rendu) < 0// On harmonise le rendue
    Erreur("Harmonisation du rendu");

    SDL_RenderPresent(rendu);

    SDL_Delay(10000);

    if (rendu != NULL)
    SDL_DestroyRenderer(rendu); // Si un rendu a été créer on le détruit
    if (fenetre != NULL)
    SDL_DestroyWindow(fenetre); // Si une fenêtre a été créer on la détruit

    SDL_Quit();
    return0;
    }

    voidErreur(char *erreur)
    {
    SDL_Log("Erreur: %s >>> %s", erreur, SDL_GetError());
    SDL_Quit();
    exit(EXIT_FAILURE);
    }

    '''

    Merci d'avance de m'aider à trouver mon erreur.

    • Partager sur Facebook
    • Partager sur Twitter
      22 juin 2020 à 8:44:01

      Salut,

      On teste une egalité avec un == pas avec un simple =.

      Du coup tu entreras TOUJOURS dans ta fonction erreur dans ton code actuel.

      • Partager sur Facebook
      • Partager sur Twitter
        22 juin 2020 à 10:37:12

        Utilises le bouton code </> du forum pour poster ton code ! (tu peux modifier ton post, lien modifier en haut à droite du post).
        • Partager sur Facebook
        • Partager sur Twitter
          22 juin 2020 à 11:26:02

          Ok merci ironwolf151 pour ta réponse, j'ai fait la fameuse erreur de débutant ;)

          -
          Edité par __TristanSam__ 22 juin 2020 à 11:26:40

          • Partager sur Facebook
          • Partager sur Twitter

          Problème sur mon code (langage C avec SDL2)

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown