Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

#include Ligner litt på import i java. Setter inn hele fila stdio.h i programteksten. Definerer en del io funksjoner slik at signaturen er kjent. I dette.

Liknende presentasjoner


Presentasjon om: "#include Ligner litt på import i java. Setter inn hele fila stdio.h i programteksten. Definerer en del io funksjoner slik at signaturen er kjent. I dette."— Utskrift av presentasjonen:

1 #include Ligner litt på import i java. Setter inn hele fila stdio.h i programteksten. Definerer en del io funksjoner slik at signaturen er kjent. I dette tilfellet vil vi benytte printf() funksjonen. Denne kan ta et varierende antall argumenter og sende disse til std. Output.

2 Innebygde typer C har ingen type boolean. Bruk int og gi denne en ikkenull verdi for true og 0 fo false. Lokale variable må deklareres før de brukes. Java: for(int i=0;i<10;i++) C: int i; for (i=0; i<10; i++) CodeVision har Size bit 1 char - unsigned char - signed char 8 int – short – unsigned int – signed int 16 long – unsigned long – float – double 32

3 /* basic syntax */ #include Int main(void){ int num1 = 4, num2 = 10, i; double ratio;// C vil ikke gi melding om uinitialiserte var. for (i=1 ;i <=num1; i++) print(”%d ”,i); while(num1 >0){ printf (”\n”); num1--; } printf(”\n”); if(num1 != 0) ratio =num2 /num1; else ratio = num2/3.0; printf (”%f\n”,ratio); return 0; } // if(num1 = 1) er tillatt i C. Tilordner 1 til num1 og sjekker om den er !=0

4 Konv. karakter ccharSkriver ut en enkel karakter d eller iintSkriver ut en int uintSkriver ut en unsigned int xintSkriver en integer hexadesimalt efloatSkriver ut i 1.23e-6 ffloatSkriver ut 0.1234 sstringPrinter en string ppekerPrinter ut en peker Eks ”%-10.4f”,fl skriver ut fl venstreorientert på et felt på 10 karakterer. 4 siffer etter komma.

5 Scanf() Scanf() leser inn data fra std. Input. Eks. int ival; scanf(”%d”, &ival); //Leser inn integer til ival. & tegnet markerer adressen til ival Og må være med!

6 Pekere - eksempel #include.. Int x=123,y; Int *p1, *p2; P1= &x; p2=&y; *p= 99; printf(”x = %d, y= %d\n”,x,y); printf(”x = %d, y= %d\n”,*p1,*p2); printf(”p1=%p, p2=%p\n”,p1,p2); …

7 Eksempel på korrekt og feil program void swap(int *a, int *b){ int temp; temp =*a; *a = *b; *b = temp; } void swap(int a, int b){ //Feil ……Feil int temp; temp =a; a = b; b = temp; }

8 Tabeller Tabeller i C kjenner ikke sin dimnsjon som i Java Eks. int i,*p; int liten_tab[10]; for(i = 0; i<10; i++) liten_tab[ i ] = i; Dersom en tabell sendes til en subrutine er det samme som å sende en peker (som peker på samme type element) Skriv(liten_tab); er ekvivalent med Skriv(&liten_tab[0]) eller p=&liten_tab[0]; Skriv(p); Rutinen Skriv(..) vil se slik ut: void Skriv(int *p){ int i; for(i=0;i<10;i++)printf(”%d\n”,*p++); }

9 Strings Stringer i C er karaktertabeller avsluttet med en null. ’\0’ =0x00 Char strOne[]= {’s’,’t’,’r’,,’i’,’n’,’g’,’ ’,’e’,’n’,’\0’}; printf(”Stringen = %s\n”,strOne); //Skriver ut ”string en” strOne[6] = ’\0’; printf(”Stringen = %s\n”,strOne); //Skriver ut ”string” Vi har en del standardmetoder som virker på stringer int strlen(char *p); Returnerer lengden på stringen (leter seg frem til null) int strstr(char *p1, ”ab”); Søker etter stringen ”ab” i stringen som p1 peker på. Int strcpy(char *p1, ”test”); kopierer ”test” til p1. Int strcat(char *p1, ” END”) Concatenerer stringer (legger ”END” etter p1)

10 Struct En struct minner litt om class i Jave, men kan bare ha atributter typedef struct { int x; int y; } punkt; punkt p,q; p.x=10; p.y=20; Vi kan også lage en tabell med punkt punkt ptab[10];

11 Pekere til strukturer punkt p, *pp; pp= &p; p.x= 10; Dette er ekvivalente utsagn (*pp).x=10;” pp->x=10; Forenklet notasjon En komponent i en struktur kan være en struktur hvilket kan gi en del sære kombinasjoner

12 PREPROCESSOR kjører først og substituerer verdier med #define Inkluderer filer som står etter #include og kutter ut deler av fila avhengig av kontrollelementer som #ifdef #elif #else #endif #define PI 3.1415926535 #define SQR(a) (sqrarg=(a),sqrarg*sqrarg) #include "filename" /* from the current directory */ #include /* from the system directories (modified by -I) */ #define DEBUG /* defines the symbol DEBUG */ #ifdef DEBUG /* code here is compiled if DEBUG is defined */ #elif defined UNIX /* code here is compiled if DEBUG is not defined, and UNIX is defined */ #else /* code here is compiled if neither DEBUG or UNIX are defined */ #endif #if 0 /* code here is never compiled */ #endif


Laste ned ppt "#include Ligner litt på import i java. Setter inn hele fila stdio.h i programteksten. Definerer en del io funksjoner slik at signaturen er kjent. I dette."

Liknende presentasjoner


Annonser fra Google