bonjour,
Je souhaite faire avancer un train sur mon écran, et ce train doit passer a travers une voie unique.
J'utilise donc ncurses.h

Quand je fais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
//Compiler avec l'option -lncurses
 
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>                  /*  for sleep()  */
#include <curses.h>
 
int main(int argc, char * argv[]) {
  initscr();              // Open curses
  noecho();             
  keypad(stdscr,TRUE);  
 
  addstr("                           voie unique        \n");
  addstr("                       +--------------------+\n");
  addstr("                       |                         |\n");
  addstr("                       |                         |\n");
  addstr("                       |                         |\n");
  addstr("                       |                         |\n");
  addstr("                       +--------------------+\n");
 
int x=3;
int i=5;
	for( i=5;i <80; i++){
  		mvprintw(x,i,"<TGV>");
		mvaddch(x,i-1,' ');
		refresh();
		usleep(80000);
}
  endwin();   // Close curses
 
}
mes trains n'avancent pas correctement (regulierement, tous les 8 caractères, j'ai un caractere qui ne s'efface pas.

Et si je supprime mon carré, ca marche bien :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
//Compiler avec l'option -lncurses
 
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>                  /*  for sleep()  */
#include <curses.h>
 
int main(int argc, char * argv[]) {
  initscr();              // Open curses
  noecho();             
  keypad(stdscr,TRUE);  
 
int x=3;
int i=5;
	for( i=5;i <80; i++){
  		mvprintw(x,i,"<TGV>");
		mvaddch(x,i-1,' ');
		refresh();
		usleep(80000);
}
  endwin();   // Close curses
 
}
Que puis je faire pour que ca marche avec mon carré dessiné à l'écran?

Merci
Julie