Gotoxy() sous linux

Fermé
sendra - 15 mai 2009 à 16:18
mamiemando Messages postés 33268 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 septembre 2024 - 5 oct. 2015 à 09:14
Bonjour, j'essai de compiler un programme sous linux avec le compilateur cc mais il ne reconnait pas le gotoxy() j'ai ajouter plusier bibliotheque mais sans succé est ce quelqu'un peut me* donner une fonction similaire c'est urgent je doit rendre mon projet demain, merci
A voir également:

1 réponse

mamiemando Messages postés 33268 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 septembre 2024 7 780
15 mai 2009 à 17:38
C'est normal ça n'existe pas. Tu peux avoir plus ou moins le même comportement avec :
#include <stdio.h>

void gotoxy(short x,short y)
{
    printf("\x1b[%d;%dH",y,x);
}

int main(){
    gotoxy(5,10);
    printf("pouet\n");
    gotoxy(2,3);
    printf("plop\n");
    return 0;
}

Seul problème tu risques d'avoir ton prompt redessiné. Conclusion mieux vaut utiliser une librairie genre ncurses.

Bonne chance
0
Merci et félicitation pour la réponse. Mais comment l'utiliser si on veut afficher un tableau dont la 1ere ligne a les titres et les colonnes on les informations?
0
mamiemando Messages postés 33268 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 septembre 2024 7 780
Modifié par mamiemando le 5/10/2015 à 09:16
Personnellement je ne mélangerais pas les descriptions de colonnes (qui sont des chaines de caractères) avec les données du tableau (qui sont par exemple des valeurs numériques). Du coup tes descriptions de colonnes seraient plutôt dans un tableau (ou un vecteur) de chaîne de caractères.

unsigned num_colonnes = 10;
char ** descriptions = malloc(sizeof(char *) * num_colonnes);
descriptions[0] = "colonne 0";
descriptions[1] = "colonne 1";
//...
descriptions[n-1] = "colonne n-1";
for (unsigned i = 0; i < num_colonnes; ++i) {
   printf("%d: %s\n",i, descriptions[i]); 
} 
free(descriptions);


Bonne chance
0