úprava pro přesměrování ze souboru u t2b, v Makefile doplněno vytváření podadresáře bin pro binárky a upraven překlad do tohoto podadresáře.
This commit is contained in:
@@ -1,16 +1,20 @@
|
||||
all:
|
||||
gcc -DNDEBUG b2t.c -o b2t
|
||||
gcc -DNDEBUG t2b.c -o t2b
|
||||
mkdir -p bin
|
||||
gcc -DNDEBUG b2t.c -o bin/b2t
|
||||
gcc -DNDEBUG t2b.c -o bin/t2b
|
||||
|
||||
debug:
|
||||
gcc b2t.c -o b2t
|
||||
gcc t2b.c -o t2b
|
||||
mkdir -p bin
|
||||
gcc b2t.c -o bin/b2t
|
||||
gcc t2b.c -o bin/t2b
|
||||
|
||||
b2t:
|
||||
gcc -DNDEBUG b2t.c -o b2t
|
||||
mkdir -p bin
|
||||
gcc -DNDEBUG b2t.c -o bin/b2t
|
||||
|
||||
t2b:
|
||||
gcc -DNDEBUG t2b.c -o t2b
|
||||
mkdir -p bin
|
||||
gcc -DNDEBUG t2b.c -o bin/t2b
|
||||
|
||||
clean:
|
||||
rm -f b2t t2b
|
||||
rm -f bin/b2t bin/t2b
|
||||
|
||||
@@ -22,6 +22,9 @@ Popis funkce T2B
|
||||
|
||||
Na standardním vstupu očekává řetězec ASCII znaků.
|
||||
Na standardní výstup vypisuje 8 binárních zanaků odpovídajících 1 ASCII znaku vstupu.
|
||||
Víceřádkový text lze zadat přesměrováním souboru (Příklad: ./t2b < soubor.txt)
|
||||
(proto nelze ruční zadávání ukončit klávesou Enter, ale 2xCTRL+Z na Windows (2xCTRL+D na Linuxu).
|
||||
|
||||
|
||||
Vstup se zpracovává znak po znaku, délka vstupní zprávy je tedy dána limity standardního vstupu na daném systému.
|
||||
|
||||
|
||||
@@ -17,16 +17,26 @@ int main() {
|
||||
|
||||
|
||||
// hláška k zadání vstupu
|
||||
printf("Zadejte textovy vstup: ");
|
||||
printf("Zadejte textovy vstup (rucni ukonceni pomoci 2xCTRL+Z na Windows (2xCTRL+D na Linuxu)): ");
|
||||
|
||||
// čtení prvního znaku vstupu
|
||||
in = fgetc(stdin);
|
||||
|
||||
// odřádkování po zadání dat, protože už nemáme Enter
|
||||
fputc('\n', stdout);
|
||||
|
||||
// hláška o výstupu
|
||||
printf("Zakodovany binarni vystup: ");
|
||||
|
||||
// cyklus zpracování vstupu
|
||||
while(in != EOF && in != '\n') {
|
||||
// zrušena možnost Enter na konci, nešly načítat víceřádkové soubory
|
||||
// technický popis chování:
|
||||
//Using Control-D, you cause the terminal driver to make all the input typed so far on the line available
|
||||
//for reading, even if you've not typed return. If you type, say, abc and then Control-D,
|
||||
//the terminal driver makes the three characters abc available (and Control-D is not seen by the program).
|
||||
//If you type Control-D again, or type return and then Control-D, then there are no more characters available,
|
||||
//so the underlying read() system call returns 0, which the standard I/O system interprets as EOF.
|
||||
while(in != EOF /*&& in != '\n'*/) {
|
||||
|
||||
// ladicí výpis aktuálního znaku
|
||||
debug("%c\n", in);
|
||||
|
||||
Reference in New Issue
Block a user