Upravljanje tokovima u C-u

1

Upravljanje tokovima u C-u

offline
  • Pridružio: 23 Jul 2006
  • Poruke: 118
  • Gde živiš: Beograd

Kako da kad sa stdin toka ucitam neki red texta da se "vratim" na red iznad? Npr. ocu da ucitam char i ako on nije 'D' da se ne predje u novi red vec da kursor ostane na istom mestu ... Dakle,samo me interesuje komanda za vracanju u red iznad... ???



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 01 Mar 2006
  • Poruke: 18

Probaj sljedeci program iz help-a C++Buildera(mislim da je to ono sto ti treba):
#include <conio.h> int main(void) {     clrscr();     gotoxy(35, 12);     cprintf("Hello world");     getch();     return 0; }
Pogledaj malo fajl "conio.h".Kljucna funkcija je gotoxy(i,j) koja pozicionira kursor u komandnom prozoru na poziciju i-ti red j-a kolona.
Pozdrav.



offline
  • meka  Male
  • Počasni građanin
  • Pridružio: 06 Avg 2003
  • Poruke: 811
  • Gde živiš: Novi Sad / Vojvodina

A ns POSIX sistemima? Ncurses ili ... ?

offline
  • Pridružio: 23 Jul 2006
  • Poruke: 118
  • Gde živiš: Beograd

Neradi burazeru onaj kod... to sam i ranije pokusavao ima dva "unresolved external"... kompajliraj pa vidi, molim te posto mi je stvarno ovo potrebno

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Pogledaj funkcije za rad sa konzolom:
http://msdn.microsoft.com/library/default.asp?url=.....erence.asp

offline
  • Pridružio: 01 Mar 2006
  • Poruke: 18

Kod mene gornji kod radi, ako kompajliram pomocu bcc32.exe (Borlandov C/C++ kompajler) ili pomocu lcc-win32 C kompajlera.
Koji kompajler koristis ?

Dopuna:

Moguce je da koristis MS C/C++ kompajler (cl.exe) jer se i kod mene javlja ista greska.Ono sto je Srki_82 predlozio je Win API i to je prilicno tesko (mada je to sustina Windows programiranja). Napravio sam mali program koristeci neke Win API funkcije koji rjesava tvoj problem (mozes da kompajliras pomocu cl.exe ili bcc32.exe svejedno).
#include <windows.h> #include <stdio.h> int main() {    char ch = 0;    COORD coord;    CONSOLE_SCREEN_BUFFER_INFO csbi;    HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);    GetConsoleScreenBufferInfo(hStdOut,&csbi);    coord.X = csbi.dwCursorPosition.X;    coord.Y = csbi.dwCursorPosition.Y;    while ( ch != 'd' )    {          scanf("%c",&ch);       if ( ch != 10 )  coord.X++;       SetConsoleCursorPosition(hStdOut,coord);    }    printf("OK\n");    system("pause");    return 0; }

Nadam se da sam ti pomogao bar malo.Pozdrav

offline
  • Pridružio: 23 Jul 2006
  • Poruke: 118
  • Gde živiš: Beograd

Aha, znaci mora da se prikljuci i windows.h . Ovo mi je zaista pomogolo!
Puno hvala.

Dopuna: 08 Avg 2006 18:19

Jos jedno pitanje. Ja znam solidno c i poceo sam da ucim C++ a taj WinApi su na nekoliko foruma spominjali a meni nije jasno jel se sve "f-je" WinAPI-a
nalaze u windows.h? Ako bi ste mogli da mi kazete sta je to WinAPI i tako to.

offline
  • meka  Male
  • Počasni građanin
  • Pridružio: 06 Avg 2003
  • Poruke: 811
  • Gde živiš: Novi Sad / Vojvodina

API = Application Programming Interface
WIN = skraćenica za Windows
---------

Dakle, to je Windows programerski interfejs (ovo dosta nezgrapno zvuči kad se prevede). U suštini, API je `izgled` funkcija. Kad kažem `izgled`, mislim na prototipove funkcija. Da li sam imalo objasnio?

offline
  • Pridružio: 23 Jul 2006
  • Poruke: 118
  • Gde živiš: Beograd

Jok ba, sad nista ne razumem. Kako samo prototip? a definicija? Ne razumem. Bitno li je to poznavati? I ne odgovori mi, jel su sve te WinApi f-je u windows.h ?
Kolko sam shvatio, preko njih se prave "prozori" ili kako?

offline
  • Pridružio: 01 Mar 2006
  • Poruke: 18

1. Interfejs je onaj dio aplikacije ili operativnog sistema preko kojeg se vrsi komunikacija istih sa korisnikom.Na pr. Windows ima graficki interfejs tj. komunikacija sa korisnikom se vrsi pomocu grafickih objekata koji se iscrtavaju na ekranu (u komandnom prozoru interfejs je tekstualni).
Na slican nacin operativni sistem ima i interfejs za komunikaciju sa aplikacijama (to je ono sto je meka rekao). U sustini izvrsni kod (.exe) koji crta na pr. prozor na ekranu u sebi ne sadrzi bilo sta sto crta prozor. Prozor crta Windows, dok program samo sadrzi poziv Win API funkcije CreateWindow (i jos nekoliko) koja se nalazi implementirana kao izvrsni kod u user32.dll-u
(Windows dakle pored programa ucitava i pomenuti dll u memoriju).

2. Sto se tice windows.h fajla u njemu nema prototipa nijedne Win API funkcije ali ako u #include stavis taj fajl na raspolaganju su ti gotovo sve glavne windows funkcije (ne sve). Na pr. funkcija ChooseColor zahtijeva #include "commdlg.h"

Ko je trenutno na forumu
 

Ukupno su 874 korisnika na forumu :: 38 registrovanih, 5 sakrivenih i 831 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., bojcistv, Boris BM, cenejac111, Denaya, dijica, dika69, djboj, draganca, Excalibur13, flash12, FOX, kybonacci, Leonov, Lošmi, Lubica, mercedesamg, Mercury, Metanoja, Miloskec, mocnijogurt, NikolaGTR, NoOneEver Dreams, nuke92, opt1, panzerwaffe, raptorsi, RJ, ruger357, Srle993, stalja, vathra, vlajkox, wizzardone, wolverined4, yufighter, ZetaMan, šumar bk2