De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag GUI  command line redirection.

Verwante presentaties


Presentatie over: "Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag GUI  command line redirection."— Transcript van de presentatie:

1 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag GUI  command line redirection Characters Command line parameters Opgave: ”+13”

2 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 2 GUI programa’s interactief, vaak WIMP GUI doe veel met 1 tool handig voor de ‘eindgebruiker’ minder handig voor de ‘programmeur’: vaak geen command line IE / Netscape (print...)

3 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 3 command-line tools (unix style) niet interactief doe 1 ding, doe dat goed werk als filter (1 stap in een lopende band) handig voor de ‘programmeur’ als onderdeel van een geheel minder handig voor de ‘eindgebruiker’ words : splits een text in regels van 1 woord lines : give line count sort : sorteer unique : remove duplicates from a sorted list grep x : filter (verwijder) alles behalve x

4 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 4 Command line opstarten

5 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 5 ‘command box’ / ‘dos prompt’ ”C:\ ………… T03202>” is de prompt ”C:\ ………… T03202” is de huidige directory Commando’s zijn bv: X: cd directory exit

6 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 6 redirection work> kopieer lezen van toetsenbord schrijven naar beeldscherm Einde invoer geeft je aan met CTRL-Z work> kopieer <a.txt lezen uit de file a.txt en schrijven naar beeldscherm work> kopieer > b.txt lezen van toetsenbord en schrijven naar de file b.txt

7 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 7 redirection work> kopieer b.txt lezen uit de file a.txt en schrijven naar de file b.txt work> kopieer b.txt –txtkopieer temp –sorteer b.txt lezen, via tussenstap wegschrijven

8 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 8 characters Characters (tekens) worden opgeslagen volgens de ASCII code ASCII is 7 bits, hoogste bit is standaard 0 Constanten: tussen enkele quotes: ’a’

9 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 9 ASCII tabel

10 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 10 characters Let op: ’0’ is iets heel anders dan 0 char x; x = 0;  Welke integer waarde en welk character staan er nu in x? char x; x = ’0’;  Welke integer waarde en welk character staan er nu in x?

11 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 11 Speciale characters ’\n’ Dit is het teken dat zorgt dat het schrijven verder gaat aan het begin van de volgende regel (er zijn er nog veel meer)

12 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 12 characters Datatypes in C: signed char, unsigned char, char signed char : 0.. 255 unsigned char : -128.. + 127 char : is een van beiden, de compiler mag kiezen  Welke range kan je veilig gebruiken als je een char gebruikt?

13 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 13 characters Chars zijn (kleine) integers, je kan er mee rekenen char x; x = ’a’; x = x + 2;  Welk bitpatroon staat er nu in x?  Welk ASCII character stelt dat bitpatroon voor?

14 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 14 characters char x; x = ’f’; x = ( x – ’a’ ) + ’A’;  Welk ASCII character staat er nu in X?  waarom die haakjes?

15 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 15 Character input / output : stdio.h #include int c; putchar( c ); c = getchar(); let op: –getchar() geeft bij einde invoer EOF terug –EOF is een waarde die buiten de char ranges valt –geeft dus een int terug, geen char

16 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 16 Voorbeeld : copy input to outut #include int main( int argc, char *argv[] ){ int x; x = getchar(); while( x != EOF ){ putchar( x ); x = getchar(); } return 0; }

17 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 17 Command line parameters int main( int argc, char **argv ){ … } argc = aantal parameters argv = array van parameters, iedere parameter is een string = een array van characters argv[ 1 ] = eerste parameter argv[ 1 ][ 0 ] = eerste letter van eerste parameter  Wat is hier onlogisch?

18 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 18 Opdracht 1 ”parameters” Maak een programma dat zijn parameters afdrukt, precies in dit formaat: Program name : Project1.exe Number of parameters : 2 Parameter 1 : ’hello’ Parameter 2 : ’world’ Print zoveel ‘parameter N’ regels als er parameters zijn.

19 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 19 Opdracht 2a : schrijf een functie… 1.IsLowercase met 1 char parameter en int result, die teruggeeft of de parameter een kleine letter is. 2.IsUppercasercase met 1 char parameter en int result, die teruggeeft of de parameter een hoofdletter is. 3.CharNr met 1 char parameter en int result, die 0 teruggeeft als de parameter geen letter is, en anders teruggeeft de hoeveelste letter het is (voor zowel hoofd als kleine letters, a=1, b=2, etc) 4.IntShift met een twee int parameters en int result, die de som van de twee ints teruggeeft, modulo 26. dus bv IntShift( 25, 2 ) = = 1 5.LetterShift met een char en een int N parameter en char result, die het character + N teruggeeft, maar cyclisch, dus bv CharShift( ’z’, 1 ) = = ’a’. Let op: kleine letters blijven kleine letters, hoofdletters blijven hoofdletters! Gebruik geen C library functies. Test je functies!

20 vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 20 Opdracht 2b : ”Ceasar” Maak een programma dat 1 command line parameter moet krijgen: een letter (het mag een hoofdletter of een kleine letter zijn). Als er geen command line parameter is, of als het eerste teken ervan geen letter is, dan moet het programma een geschikte foutmelding geven. Het programma leest zijn invoer en schrijft die weer weg naar zijn uitvoer, maar daarbij worden alle letters N plekken verschoven (cyclisch, dus ’a’ + 1 == ’b’, maar ’Z’ + 1 = = ’A’), waarbij N wordt bepaald door de letter op de command line: ’A’==1, ‘B’==2, etc. Gebruik waar mogelijk de functies van 2a! http://en.wikipedia.org/wiki/Caesar_cipher


Download ppt "Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag GUI  command line redirection."

Verwante presentaties


Ads door Google