Forum Programmation.c erreur de segmentation sur SDL_Init

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
21
avr.
2021

bonjour,
j'utilise actuellement la SDL2. Je viens de m'y mettre.
Je sais lier les librairies vu que j'utilisais déjà la version 1.2.
Le problème est qu'après avoir lu les tuto de lazy foo, qui fonctionnent très bien en c++, une fois reformaté et compilé en c j'ai un problème avec la SDL_Init.
Voici ce que me renvoie le débogueur :

(gdb) s
76      if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
(gdb) s
Program received signal SIGSEGV, Segmentation fault.
__GI___libc_free (mem=0x3)
(…)

Forum Programmation.c Warnings de compilation et résultat incorrect

Posté par  . Licence CC By‑SA.
Étiquettes :
0
2
déc.
2020

Bonjour,

Je souhaite écrite un programme qui à partir d’un tableau d’entiers d’au moins un entier, fournit le nombre de sous-séquences croissantes de ce tableau, ainsi que les indices de début et de fin de la plus grande sous-séquence.
J'ai eu des warnings de compilation dans 3 lignes (warning: assignment makes pointer from integer without a cast [-Wint-conversion]) et le résultat est incorrect, ça me donne toujours 0.
Aidez-moi SVP! je vous remercie.
Voilà mon code:

    #include <stdio.h>

    void soussequences
(…)

Forum Programmation.c Problème avec le renvoi au menu principal

Posté par  . Licence CC By‑SA.
Étiquettes :
0
19
nov.
2020

Bonjour.
Je veux écrire un programme qui affiche le menu suivant:
1- Résolution d'un polynôme de 1er degré
2- Résolution d’un polynôme de 2nd degré
3- Quitter
Après avoir fait un de ces traitement, le programme doit interroger l'utilisateur s’il veut continuer ou non. Si oui, il le renvoi au menu principal sinon il met fin à l’exécution.
J’ai fait un premier essai mais mon programme ne fait pas ça : dans un premier temps, il fait correctement le traitement (…)

Forum Programmation.c algorithme minmax

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
12
sept.
2020

Bonjour à tous,
J’essaie de programmer une petite IA sur un Puissance4.
Le problème est que je n’arrive pas à comprendre l’algorithme minmax.
En effet, cette fonction minmax est censée nous renvoyer un score.
Il faut donc qu’à chaque coup sur les 7 que tente la machine, l’algorithme minmax soit appelé à évaluer le joueur… Puis que l’on prenne le minimum des scores obtenus pas le joueur pour trouver le coup optimal pour la machine.
C’est la représentation que je (…)

Forum Programmation.c [Résolu] OpenGL GLUT référence indéfini

Posté par  . Licence CC By‑SA.
Étiquettes :
0
14
août
2020

Salut à tous :)

Finalement il suffisait de rajouter -lglut à la ligne de compilation

J'ai le problème référence indéfini lorsque je compile
J'ai installer freeglut3-dev donc normalement je suis capable de faire fonctionner ce code (enfin je crois) :

#include <stdio.h>
#include <stdlib.h>
#include <GL/glut.h>
#include <GL/freeglut.h>
#include <GL/glx.h>
#include <GL/gl.h>

int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA); 
    glutInitWindowSize(1024,
(…)

Forum Programmation.c essayer de recupérer l'adresse de retour d'une fonction

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
6
22
juil.
2020

bonjour à tous,

J'essaye de récupérer l'adresse de retour stockée dans la pile puis de faire un jump sur cette adresse afin de revenir à mon main, je vous montre mon code puis vous explique ma démarche :

    int addOne ( int value )
    {
        char * ptr = (char*)&value; // la variable value est situé a RBP-0x14
        void (*adresseDeRetour) (void) = (ptr + 28);
        adresseDeRetour();
(…)

Forum Programmation.c petit probleme avec gdb et la structure pthread_mutex_t

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
25
mai
2020

Bonjour à tous,

voila je me suis fabriqué un petit programme qui fait un deadlock (via 2 threads). puis ensuite avec gdb je regarde à quelle instruction est mon programme (via backtrace), j'ai :

#0  __lll_lock_wait ()
    at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
#1  0x00007f623ede4023 in __GI___pthread_mutex_lock (
    mutex=0x5571dcb2c040 <mutexDeCosmoff>)
    at ../nptl/pthread_mutex_lock.c:78
#2  0x00005571dc92b89b in callback1 ()
#3  0x00007f623ede16db in start_thread (arg=0x7f623e9e8700)
    at pthread_create.c:463
#4  0x00007f623eb0a88f in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

je constate donc que mon thread est bloqué par le mutex : mutexDeCosmoff (…)

Forum Programmation.c Communication entre processus avec pipe() et dup2().

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
28
fév.
2020

Bonjour,

Je souhaite écrire un programme en C, qui permet d'enregistrer toutes les entrées/sorties d'un bash.
Mon idée est de créer un nouveau processus "enfant" qui va lancé le bash.
Le processus "parent" va s'occuper d'enregistrer les entrées/sorties du processus "enfant".
Pour l'instant j'essaye seulement de connecter STDIN du père a STDIN du fils et STDOUT du fils a STDOUT du père.

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

#define BUFF_SIZE 1024
#define NB_PIPE 2

int main(int argc,
(…)

Forum Programmation.c Sonar Qube faux positif…

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
26
fév.
2020

Bonjour,

J’ai un soucis, sonarqube me dit que je peux écrire en dehors d’un tableau… Je vous montre le code.

   condition = (index < taille_max);

   checkCondition(condition);

   (appelDeHook[index])(parametres);

En gros il me dit que si index >= taille_max, alors appelDeHook[index] tape à l’extérieur du tableau. Ce qui n’est pas faux, sauf que checkCondition est implémentée comme suis :

void checkCondition(int condition)
{
    if (!condition)
(…)

Forum Programmation.c tableau en c

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
7
déc.
2019

bonjour a toutes et a tous!
je suis étudiant debutant en langage de programmation c, j'ai besoin de votre aide.

j'ai fait un programme avec code block où il est demandé d'initialiser un tableau de 5 entiers et de rechercher le minimum du tableau et son indice;
j'ai fait mais juste que le resultat ne me convainc pas 100%. ca c'est le programe.

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

int main()
{
  int tab[5];
  int min;
  int
(…)

Forum Programmation.c Sécurité lors de la déclaration d'un pointeur

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
8
nov.
2019

Bonjour,

J'ai ce petit code ou je déclare deux pointeurs tableau je veux savoir si juste la déclaration et l'affectation peut donner le mauvais accès à la mémoire réservée par ce pointeur ou c'est après la mauvaise utilisation de malloc qui peut causer le vol de données ou l'injection de mauvaise données.

Mon code C:

void mafonction(int* tab1, int* tab2, int len) 
{ 

int i; 
for(i = 0; i
(…)

Forum Programmation.c probleme avec le fonctionnement d'un thread

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
13
oct.
2019

bonjour,

voila je vous poste mon code ca sera plus simple pour la suite d'expliquer mon probleme.

    #include <stdio.h>
    #include <stdlib.h>
    #include <pthread.h>
    #include <unistd.h>

    void* f(void * arg)
    {
        int value = *((int*)arg);
        fprintf(stdout, "thread : &value  = %p ; value = %i\n", arg, value);

    }

    int main(int argc, char const *argv[])
    {
        pthread_t t;
(…)

Forum Programmation.c ASCII, ncurses, souris

Posté par  . Licence CC By‑SA.
Étiquettes :
3
13
sept.
2019

Bonjour à tous,

Je souhaite mettre à jour un éditeur de texte, fonctionnant en mode console (sans interface graphique), traitant le jeu ASCII, que j'ai écrit, en C, et dont voici l'histoire résumée :
1983 : Première version sous MS-DO, écran géré par accès direct en assembler. Il tenait sur 64 Ko, et pouvait gérer des fichiers de 32768 lignes d'au maximum 128 caractères. Pas d'utilisation de la souris.
1990 : Portage sous SCO UNIX, écran géré par curses, portage (…)

Forum Programmation.c langage C : pourquoi on ne peut pas allouer la taille d'un tableau pendant l'exécution du programme?

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
12
sept.
2019

bonjour à tous,

si j'ai le code suivant :

void f( int size )
{
    int tab[size];
    ...
}

Le compilateur va retourner une erreur, pourtant en assembleur il est tres facile de réaliser le code ci dessus :
:
push rbp
mov rbp, rsp
sub rsp, eax //avec eax = size

pourquoi en C je ne peux donc pas faire ca. Est ce juste une convention ou alors il y a une raison derriere tout ca ?

Merci d'avance (…)

Forum Programmation.c tableau,structure,pointeur.

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
1
sept.
2019

Bonjour a toutes et a tous,
Je souhaiterai modifier ce code afin d'utiliser non pas "menbre1, menbre2 etc… mais plutot un tableau qui contiendrai chacun de mes menbres . Voici le code:

#include <stdio.h>
#include <string.h>

typedef struct famille
{ int age;
  char surnom[20];
  char nom[20];
}famille;
/*-----------------------*/
void changement(famille *m)
{ m->age=18;
  strcpy(m->surnom,"plouf");
  strcpy
(…)