Topic de JoboLeHit :

[BORDEL DE MERDE] Pourquoi ce CODE en C bug ?

Full débutant, j'apprends avec OpenClassroom. 1 fois sur 2 j'ai le bon resultat... :( Un pro pour m'aider ? J'ai test Claude, GROK, GPT, ils trouvent pas la source du pb... Le but c'est de calculer les positions des ennemis pour voir si le joueur gagne selon sa position.

J'utilise GCC pour info.

Merci pour votre aide les kheys...

#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <dlfcn.h>
#include <stdbool.h>


int addSpeed(int speed){
    return speed ^ 55;
}

int main() {

    printf("Bienvenue dans la simulation physique !\n");
    printf("Calcul des vitesses ennemies...\n");
    int speeds[8] = {68, 78, 68, 67, 82, 90, 0};
    int newSpeeds[8] = {0};
    for (int i = 0; i < 6; ++i){
        newSpeeds[i] = addSpeed(speeds[i]);
    }

    printf("Calcul des positions ennemies...\n");
    int positions[8] = {69, 90, 23, 26, 69, 81, 23, 29};
    int newPositions[8] = {0};
    for (int i = 0 ; i < 8; ++i){
        newPositions[i] = addSpeed(positions[i]);
    }

    printf("Tu vas affronter le Roi... Comment souhaites-tu le nommer ?\n");
    char enemyName[7] = {0};
    for (int i = 0 ; i < 6; ++i){
        enemyName[i] = (char)newSpeeds[i];
    }    
    printf("Et toi, comment te nommes-tu ?\n");
    char heroName[8] = {0};
    for (int i = 0 ; i < 8; ++i){
        heroName[i] = (char)newPositions[i];
    }

    printf("Et c'est la simulation finale, le jet du sort !\n");
    int (*acceleration)(const char*) = dlsym(RTLD_DEFAULT, enemyName);
    printf("Et c'est fini !\n");
    acceleration(heroName);
    
}
https://image.noelshack.com/fichiers/2025/26/5/1751029043-10003081902af94504ad007237.jpg Photo pour remercier les kheys qui m'aideront
tu as quoi comme erreur lors de l'execution

Le 15 août 2025 à 18:46:26 :
tu as quoi comme erreur lors de l'execution

Soit tout fonctionne soit j'ai Segmentation Fault

Je dois sortir chercher ma petite soeur, je re dans 30 minutes, les kheys.
  1. include <stdio.h>
  2. include <stdint.h>
  3. include <stdlib.h>
  4. include <dlfcn.h>
  5. include <stdbool.h>

int addSpeed(int speed){ return speed ^ 55; }

int main(void) {
int speeds[8] = {68, 78, 68, 67, 82, 90, 0};
int positions[8] = {69, 90, 23, 26, 69, 81, 23, 29};

char enemyName[7] = {0};
for (int i = 0; i < 6; ++i) enemyName[i] = (char)addSpeed(speeds[i]);

char heroName[9] = {0};
for (int i = 0; i < 8; ++i) heroName[i] = (char)addSpeed(positions[i]);

// dlsym + vérif
int (*acceleration)(const char *) = (int (*)(const char *)) dlsym(RTLD_DEFAULT, enemyName);
char *err = dlerror();
if (err || !acceleration) {
fprintf(stderr, "dlsym failed: %s\n", err ? err : "unknown error");
return 1;
}

//
return acceleration(heroName);
}

Peut etre ta puissance 55 qui depasse vite la limite d'un int.

Essayes comme ça l’op, ça marche chez moi sur GCC :

#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <dlfcn.h>
#include <stdbool.h>


int addSpeed(int speed){
    return speed ^ 55;
}

int main() {

    printf("Ouvrez vos CULS page PROUT !\n");
    printf("Calcul de la vitesse de l’ampoule rectale...\n");
    int speeds[8] = {68, 78, 68, 67, 82, 90, 0};
    int newSpeeds[8] = {0};
    for (int i = 0; i < 6; ++i){
        newSpeeds[i] = addSpeed(speeds[i]);
    }

    printf("Calcul de la positions des pets oeufés...\n");
    int positions[8] = {69, 90, 23, 26, 69, 81, 23, 29};
    int newPositions[8] = {0};
    for (int i = 0 ; i < 8; ++i){
        newPositions[i] = addSpeed(positions[i]);
    }

    printf("Tu vas PROUTER dans le cul de Nasdas ... Comment souhaites-tu le nommer ?\n");
    char enemyName[7] = {0};
    for (int i = 0 ; i < 6; ++i){
        enemyName[i] = (char)newSpeeds[i];
    }    
    printf("Et toi, comment te nommes-tu ?\n");
    char heroName[8] = {0};
    for (int i = 0 ; i < 8; ++i){
        heroName[i] = (char)newPositions[i];
    }

    printf("Et c'est la simulation finale, le pet du sort !\n");
    int (*acceleration)(const char*) = dlsym(RTLD_DEFAULT, enemyName);
    printf("Et c'est fini !\n");
    acceleration(heroName);
    
} 
Non je rigole, c'était un troll, n'exécutez pas le code :ok:

Données du topic

Auteur
JoboLeHit
Date de création
15 août 2025 à 18:45:19
Nb. messages archivés
12
Nb. messages JVC
13
Voir le topic sur JVC

Afficher uniquement les messages de l'auteur du topic

En ligne sur JvArchive
JvArchive compagnon
Découvrez JvArchive compagnon, l'userscript combattant la censure abusive sur le 18-25 !