Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2886 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [C - Ncurses] Hello World : Affichage désespérement vide...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C - Ncurses] Hello World : Affichage désespérement vide...

n°1546195
Geddons
HFR old timer ?
Posté le 21-04-2007 à 12:43:04  profilanswer
 

Salut à tous :hello:,
 
Dans le cadre d'un projet beaucoup plus gros, il se trouve que je dois me servir de l'interface NCurses sous Linux (je tourne sous Ubuntu 6.10). Ayant potassé le Howto hier, j'ai tâché de me lancer dans divers tests afin de bien assimiler les commandes de bases.
 
J'ai jeté un oeil sur les exemples de programmes donnés, en commençant sur le HelloWorld de base :
 

Code :
  1. #include <ncurses.h>
  2. int main()
  3. {
  4. initscr();   /* Start curses mode     */
  5. printw("Hello World !!!" ); /* Print Hello World    */
  6. refresh();   /* Print it on to the real screen */
  7. getch();   /* Wait for user input */
  8. endwin();   /* End curses mode    */
  9. return 0;
  10. }


 
Ce programme exemple fonctionne très bien, il n'y a aucun souci pour celui-là.
 
J'ai essayé de l'adapter en créant une nouvelle fenêtre, que voici :  
 

Code :
  1. #include <ncurses.h>
  2. int main()
  3. {
  4.   initscr();
  5.   noecho();
  6.   cbreak();
  7.   curs_set(0);
  8.  
  9.   WINDOW* test = newwin(10, 80, 0, 0);
  10.   if (!test) { //newwin went wrong.
  11.     printw("ERROR with newwin\n." );
  12.     refresh();
  13.     getch();
  14.   }
  15.   wmove(test, 0, 0);
  16.   wprintw(test, "Hello World !! (on test window.)" );
  17.   wrefresh(test);
  18.   getch();
  19.  
  20.   delwin(test);
  21.   endwin();
  22.  
  23.   return 0;
  24. }


 
Et j'ai un affichage désespérément blanc sur mon terminal... J'ai potassé un peu les divers exemples donnés à droite et à gauche et je ne trouve vraiment pas. Je parie que c'est sûrement une bête erreur, mais quoi ? Quelqu'un pourrait-il m'apporter cette réponse ? :D


Message édité par Geddons le 21-04-2007 à 12:49:15
mood
Publicité
Posté le 21-04-2007 à 12:43:04  profilanswer
 

n°1546202
zecrazytux
Posté le 21-04-2007 à 12:54:45  profilanswer
 

tu compile avec quoi ?
 
c'est pkg-config quoi ? j'ai essayé ncurses, libncurses... touve pas :s


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1546206
Geddons
HFR old timer ?
Posté le 21-04-2007 à 13:01:38  profilanswer
 

Salut :hello:,
 

zecrazytux a écrit :

tu compile avec quoi ?


 
Voilà mes options de compilation exactes :  
 

Code :
  1. gcc --std=c99 --pedantic -Wall -W -Wmissing-prototypes -lncurses -o hello_world hello_world.c


 

Citation :

c'est pkg-config quoi ?


 
Là par contre je sais pas de quoi tu parles :D (Je suis relativement débutant sur Linux). J'ai du installer le package libncurses5-dev via le gestionnaire de dépôts APT (spécifique à la distribution Ubuntu si je ne m'abuse ?).
 

Citation :

j'ai essayé ncurses, libncurses... touve pas :s


 
Mes précisions peuvent-elles t'aider ? Si tu veux d'autres renseignements, je me ferai une joie de te les donner :jap:.  
 
Merci pour ta réponse  :jap: .

n°1546230
Geddons
HFR old timer ?
Posté le 21-04-2007 à 14:19:08  profilanswer
 

Bon, j'suis vraiment paumé là :/.

 

Selon l'exemple trouvé ici :

 
Code :
  1. #include <stdio.h>
  2. #include <ncurses.h>
  3. int main()
  4. {
  5.         WINDOW *vin;
  6.         initscr();
  7.         start_color();
  8.         init_pair(1,COLOR_YELLOW,COLOR_BLUE);
  9.         init_pair(2,COLOR_BLUE,COLOR_YELLOW);
  10.         init_pair(3,COLOR_BLUE,COLOR_WHITE);
  11.         vin=newwin(12,40,13,0);
  12.         wmove(vin,0,5);
  13.         wprintw(vin,"Hello, World." );
  14.         wbkgd(vin,COLOR_PAIR(1));
  15.         wrefresh(vin);
  16.         getch();
  17.         delwin(vin);
  18.         endwin();
  19.         return 0;
  20. }
 

(avec init_scr() changé en initscr(), y avait apparemment soit une erreur de frappe soit une utilisation d'une autre version de ncurses)

 

Je devrais obtenir ça :

 

http://www.writeka.com/ed/sample_out.png

 

Et j'obtiens ça :

 

http://img85.imageshack.us/img85/5296/captureax8.png

 

:cry:

 

J'comprends plus rien :/.


Message édité par Geddons le 21-04-2007 à 20:15:08
n°1546241
zecrazytux
Posté le 21-04-2007 à 14:40:19  profilanswer
 

même probleme que toi, tes deux codes ne marchent pas...
pourtant les examples du hoxto : http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ marchent parfaitement.
 
pkg-config te donne les path de la librairie, permet de foutre les cflags :)
tres utile avec gcc:
 
gcc -o output fichiers.c     `pkg-config --cflags --libs malibrairie`


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1546269
Geddons
HFR old timer ?
Posté le 21-04-2007 à 15:44:59  profilanswer
 

zecrazytux a écrit :

même probleme que toi, tes deux codes ne marchent pas...

 

:/. C'est quand même bizarre qu'il n'y ait pas moyen d'afficher le contenu d'une fenêtre secondaire, incluse dans stdscr... Si je fais mes exemples sur stdscr ça marche au poil ! :/

 
Citation :

pourtant les examples du hoxto : http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ marchent parfaitement.

 

Oui, je les avais testés aussi... j'arrive pas à comprendre pourquoi mes tests ne fonctionnent pas...

 
Citation :

pkg-config te donne les path de la librairie, permet de foutre les cflags :)
tres utile avec gcc:

 

gcc -o output fichiers.c     `pkg-config --cflags --libs malibrairie`

 

Hum ok merci, je comprends mieux :jap:. Sinon, tu n'as d'idée pour la résolution du problème j'imagine ? :(


Message édité par Geddons le 21-04-2007 à 15:45:15
n°1546271
zecrazytux
Posté le 21-04-2007 à 15:47:49  profilanswer
 

je commence le C seulement cette année et j'ai juste fas du GTK. non je n'ai pas d'idée, j'ai cherché un peu mais rien... et j'ai un peu de boulot a coté aussi désolé.


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1546273
Geddons
HFR old timer ?
Posté le 21-04-2007 à 15:55:29  profilanswer
 

Pas de souci, merci pour ton aide :jap:. Y aurait-il un autre bon samaritain dans le coin ? :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [C - Ncurses] Hello World : Affichage désespérement vide...

 

Sujets relatifs
Affichage d'une image pendant le clic sur un boutondessiner un rectangle vide sur une image
[Résolu] Affichage d'un pdf dans une appli' C#[Struts]Affichage de messages d'erreur avec html:errors
$_FILES[]["tmp_name"] et $_FILES[]["type"] vide, pourquoi ?Problème d'affichage d'un tableau
affichage xml dans explorerBalise vide non reconnue
Gestion de la navigation par jour avec nombre d'affichage limité svpaffichage page impossible
Plus de sujets relatifs à : [C - Ncurses] Hello World : Affichage désespérement vide...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR