c++ pobieranie znaku zachęty

0

Witam.
W jaki sposób można skopiować znak zachęty z powłoki(np bash) w cpp?
Tak aby przez cout można było go normalnie wyświetlać tak jak w powłoce?

0

konsola to okno, nie ozesz nic kopiowac.
pod windows, WriteFile moze zarowno obslugiwac pipe, jak i pisac po konsole. Da sie przekierowac stdout, i jesli program kozysta z textowego outputa - bedziesz mial ten znak.
jesli program kozysta z funkcji (np WriteConsole), nic nie zrobisz.

Pod linuxem jest funkcja write(). Tak to juz chyba kernel decyduje czy handle jest konsola, czy czyms innym. Wszystko jest plikiem i io wyglada tak samo.
Wiec mysle ze jak przekierujesz stdout, bedziesz mial ten znak, o ile wlasnie konsola kozysta z write() by go wyswietlac.

i nie zapominaj, ze mozesz to robic tylko jak tworzysz proces potomny. Jak sie podczepiasz do konsoli nie ma mozliwosci zalozwnia hooka na jej output, pod windowsem na 100%, pod linuxem - nie jestem pewien.

0
wrj napisał(a)

Witam.
W jaki sposób można skopiować znak zachęty z powłoki(np bash) w cpp?
Tak aby przez cout można było go normalnie wyświetlać tak jak w powłoce?

To nie jest taka prosta sprawa. W Linuksie masz to zapisane po prostu w pliku/zmiennej środowiskowej:
http://www.gentoo.org/doc/pl/articles/prompt-magic.xml

Trzeba pamiętać, iż należy ją jeszcze odpowiednio zinterpretować.

1 użytkowników online, w tym zalogowanych: 0, gości: 1