| | |
| Stránka: 1 z 1
| [ Príspevkov: 9 ] | |
Autor | Správa |
---|
Registrovaný: 23.11.08 Príspevky: 187 Témy: 34 Bydlisko: IP: 209.85.... | Napísal Logik: 04.12.2008 18:32 | |
|
Caute. Ako spravim getche() popripade getch() v C pod unixom? Aka je alternativa k funkcii khbit()? clrscr() vyriesim cez vypis for.........putchar("\n"); Zislo by sa aj textcolor(), no to je skor otazka dizajnu...Hlavne potrebujem aby mi to fungovalo, nie vyzeralo... Na nete som nasiel akurat gotoxy():
Kód: #include <string.h>
int gotoxy(int x, int y) { char essq[100]; char xstr[100]; char ystr[100];
sprintf(xstr, "%d", x); sprintf(ystr, "%d", y); essq[0] = '\0'; strcat(essq, "\033["); strcat(essq, ystr); strcat(essq, "d"); strcat(essq, "\033["); strcat(essq, xstr); strcat(essq, "G"); printf("%s", essq);
return 0; }
Pouzivam Code::Blocks, Ubuntu 8.11
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 |
Skus vygooglit tie kniznice, kde su tie funkcie definovane. Ohladom toho getch, hladaj ncurses.
_________________ Empty your memory, with a free()… like a pointer! If you cast a pointer to an integer, it becomes the integer, if you cast a pointer to a struct, it becomes the struct… The pointer can crash…, and can overflow… Be a pointer my friend… |
|
Registrovaný: 23.11.08 Príspevky: 187 Témy: 34 Bydlisko: IP: 209.85.... | Napísal autor témy Logik: 04.12.2008 21:23 | |
|
Ano, vdaka treba na to funkciu <ncurses.h> potom pojde vymazanie obrazovky:
Kód: void clrscr() { #ifndef unix system("cls"); #else system("clear"); #endif }
Nasiel som aj ine vymazanie obrazovky: Kód: puts("\33[H\33[2J");
alebo Kód: fputs("\33[H\33[2J",stdout);
s tou kniznicou pojde aj getche();
len nemozem najst ako nainstalujem, respektive stiahnem a kde skopirujem kniznicu <ncurses.h>
Neviete nahodou?
|
|
Registrovaný: 30.04.08 Prihlásený: 15.05.15 Príspevky: 884 Témy: 3 |
No podla mna by si to uz mal mat v kompilatore v Linuxe... ci nie?
_________________ Empty your memory, with a free()… like a pointer! If you cast a pointer to an integer, it becomes the integer, if you cast a pointer to a struct, it becomes the struct… The pointer can crash…, and can overflow… Be a pointer my friend… |
|
Registrovaný: 23.11.08 Príspevky: 187 Témy: 34 Bydlisko: IP: 209.85.... | Napísal autor témy Logik: 04.12.2008 21:41 | |
|
Ked do zdrojaku napisem #include <ncurses.h> tak code::blocks vypise pri kompilacii:
error: ncurses: No such file or directory
Skusal som stiahnut ncurses cez Synaptic Package Manager, no nepomohlo...
|
|
Registrovaný: 30.05.07 Prihlásený: 29.03.14 Príspevky: 641 Témy: 46 |
skus kompilovat s parametrom -lncurses na konci
|
|
Registrovaný: 23.11.08 Príspevky: 187 Témy: 34 Bydlisko: IP: 209.85.... | Napísal autor témy Logik: 04.12.2008 22:24 | |
|
ak myslis #include <ncurses.h -lncurses>
alebo #include <ncurses.h> -lncurses
tak to nefunguje...
Nemam kniznicu <ncurses.h>, dal som hladat v konzole, cez $ dpkg --search ncurses.h no nenaslo a ked som dal hladat tym istym prikazom curses.h naslo len kniznice pre python2.4...
Niekde na nete som nasiel ze tam treba aby naslo
libncurses5-dev: /usr/include/curses.h
potom ze to pojde...len ako dostat kniznicu do spravneho priecinka?
|
|
Registrovaný: 30.05.07 Prihlásený: 29.03.14 Príspevky: 641 Témy: 46 |
nie, myslel som prekladat prikazom gcc [parametre] zdroj -lncurses (aj ked asi to codeblocks tak robi, neviem co to je za editor/ide)
edit: ale to nepomoze ak to fakt nemas na disku... skus napriklad preinstalovat gcc
|
|
Registrovaný: 23.11.08 Príspevky: 187 Témy: 34 Bydlisko: IP: 209.85.... | Napísal autor témy Logik: 07.12.2008 21:34 | |
|
Takze stiahol som kniznicu ncurses.h, nejaku upravenu conio.h pre linux a uz mi funguje vacsina potrebnych funkcii, akurat kbhit() blbol, tak som vymenil za iny, ktory som nasiel na nete:
Kód: static int initialized = 0; static struct termios original_tty;
void kbinit() { struct termios tty; tcgetattr(fileno(stdin), &original_tty); tty = original_tty;
/* Disable ICANON line buffering, and ECHO. */ tty.c_lflag &= ~ICANON; tty.c_lflag &= ~ECHO; tcsetattr(fileno(stdin), TCSANOW, &tty);
/* Decouple the FILE*'s internal buffer. */ /* Rely on the OS buffer, probably 8192 bytes. */ setbuf(stdin, NULL); initialized = 1; }
/* Call this just before main() quits, to restore TTY settings! */ void kbfini() { if(initialized) { tcsetattr(fileno(stdin), TCSANOW, &original_tty); initialized = 0; } }
int kbhit() { if(!initialized) { kbinit(); }
int bytesWaiting; ioctl(fileno(stdin), FIONREAD, &bytesWaiting); return bytesWaiting; }
/* Call this just when main() does its initialization. */ /* Note: kbhit will call this if it hasn't been done yet. */
...mozno to niekomu pomoze.
Aj ked som nahradil vsetky win funkcie linuxackymi, aj tak mi to nefunguje, ako vo win...
|
|
| Stránka: 1 z 1
| [ Príspevkov: 9 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Unix Benchmarks v Operačné systémy Unix a Linux | 3 | 1442 | 08.02.2014 10:25 polo | | IBM UNIX AIX v Operačné systémy Unix a Linux | 5 | 761 | 06.06.2008 22:39 FERDA23 | | Najpouzivanejsi unix/linux v Operačné systémy Unix a Linux | 28 | 4945 | 08.01.2008 15:51 Wheeler | | Vypis argumentov - Csh - UNIX v Assembler, C, C++, Pascal, Java | 0 | 649 | 07.10.2007 16:32 SAmo | | Unix pre desktopy - DesktopBSD v Operačné systémy Unix a Linux | 10 | 1030 | 08.06.2006 0:26 JanoF | | hladame Support Specialist (Win, Unix) v Ponuka práce | 7 | 1042 | 05.12.2007 22:37 IT specialist | | unix time na normalny cas v PHP, ASP | 1 | 735 | 10.03.2007 22:08 p360t | | UNIX - Pridanie vlákien do programu. v Assembler, C, C++, Pascal, Java | 1 | 289 | 22.04.2014 17:10 BX | | praca - linux alebo unix-like systemy v Operačné systémy Unix a Linux | 3 | 764 | 02.12.2008 18:14 jararak | | Hladame Unix specialistov s plynulou Anglictinou v Ponuka práce | 0 | 418 | 03.05.2012 15:10 Rasto4 | | Stranky so zameranim na linux a unix v Operačné systémy Unix a Linux | 28 | 7537 | 06.09.2023 22:10 89Aquarius | | Hladam niekoho na konzultacie javy a Unix v Ponuka práce | 1 | 869 | 09.01.2009 21:15 Skorpikon | | UNIX like system a 3g net od Pomarancu v Operačné systémy Unix a Linux | 0 | 503 | 24.08.2007 13:59 erased_fear | | Linux/unix Bash Prikaz pre zoradenie vzostupne etc. v Operačné systémy Unix a Linux | 1 | 425 | 03.12.2013 15:35 XOLOO | | Konvertovanie UNIX casu do DAYS / HOURS / MINUTES / SECONDS v PHP, ASP | 2 | 385 | 24.07.2010 19:18 stenley | | Unix/Linux Engineers pre znamu socialnu siet (Dublin, Irsko) v Ponuka práce | 0 | 476 | 15.03.2012 10:39 CPLjobs |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|