Programowanie mikrokontrolerów rodziny AVR. Narzdzia rozwojowe
|
|
- Bronisława Jastrzębska
- 8 lat temu
- Przeglądów:
Transkrypt
1 Programowanie mikrokontrolerów rodziny AVR Narzdzia rozwojowe 1
2 AVR-GCC AVR-GCC jest darmowym kompilatorem jzyka C (licencja GNU) słucym do pisania programów dla mikrokontrolerów serii AVR firmy ATMEL. Kompilator jest dołczany do rodowiska AVR Studio, pozwalajc na tworzenie projektów programistycznych w jzyku C/C++ 2
3 Programy narzdziowe - Binutils Jest to zbiór programów pozwalajcych na sprawne zarzdzanie projektem. Binutils s dołczone do rodowiska rozwojowego i wraz z kompilatorem AVR-GCC oraz bibliotek avr-libc stanowi kompletny łacuch narzdzi rozwojowych 3
4 Programy narzdziowe - Binutils Dostpne s nastpujce programy narzdziowe: avr-as - asembler avr-ld - linker avr-ar - zarzdza bibliotekami avr-ranlib generuje indeksy do bibliotek avr-objcopy kopiuje i tłumaczy zbiory obiektowe avr-objdump wywietla informacje z plików obiektowych avr-size podaje informacj o rozmiarze sekcji i programu avr-nm listuje symbole ze zboiru obiektowego avr-strings listuje łacuch znakowe ze zbiorów obiektowych avr-strip usuwa symbole avr-readelf wywietla zawarozbioru z rozszerzeniem ELF avr-addr2line konwertuje adresy avr-c++filt filtr symboli C++ 4
5 avr-libc jest standardow bibliotek C dla AVR-GCC. Biblioteka zawiera wiele standardowych funkcji C i właciwych dla architektury procesorów rodziny AVR. Dodatkowo biblioteka pozwala na tworzenie kodu startowego programu. 5
6 Mikrokontrolery spierane przez bibliotek avr-libc w wersji 1.4.7: megaavr: atmega103 atmega128 atmega1280 atmega1281 atmega16 atmega161 atmega162 atmega163 atmega164p atmega165 atmega165p atmega168 atmega168p atmega2560 atmega2561 atmega32 atmega323 atmega324p atmega325 atmega325p atmega3250 atmega3250p atmega328p atmega48 atmega48p atmega64 atmega640 atmega644 atmega644p atmega645 atmega6450 atmega8 atmega88 atmega88p atmega8515 atmega8535 6
7 Mikrokontrolery spierane przez bibliotek avr-libc w wersji 1.4.7: tinyavr: attiny11 attiny12 attiny13 attiny15 attiny22 attiny24 attiny25 attiny26 attiny261 attiny28 attiny2313 attiny43u attiny44 attiny45 attiny461 attiny48 attiny84 attiny85 attiny861 CAN AVR: at90can32 at90can64 at90can128 LCD AVR: atmega169 atmega169p atmega329 atmega329p atmega3290 atmega3290p atmega649 atmega6490 Lighting AVR: at90pwm1 at90pwm2 at90pwm2b at90pwm216 at90pwm3 at90pwm3b at90pwm316 Smart Battery AVR: atmega8hva atmega16hva atmega406 7
8 Mikrokontrolery spierane przez bibliotek avr-libc w wersji 1.4.7: Standardowe AVR: at90s1200 at90s2313 at90s2323 at90s2333 at90s2343 at90s4414 at90s4433 at90s4434 at90s8515 at90c8534 at90s8535 attiny461 attiny48 attiny84 attiny85 attiny861 USB AVR: at90usb82 at90usb162 at90usb646 at90usb647 at90usb1286 at90usb1287 Inne: at94k at76c711 at43usb320 at43usb355 at86rf401 8
9 Moduły biblioteki avr-libc w wersji 1.4.7: <alloca.h> - alokujacja pamici stosu <assert.h> - diagnostyka <ctype.h> - operacje na znakach <errno.h> - obsługa błdów <inttypes.h> - konwersje typów całkowitych <math.h> - funkcje matematyczne <setjmp.h> - długie skoki <stdint.h> - definicje standardowych typów całkowitych <stdio.h> - standardowa biblioteka wejcia/wyjcia <stdlib.h> - funkcje standardowe <string.h> - funkcje operujce na łacuchach <avr/boot.h> - narzdzia wspierajce funkcje bootloadera <avr/eeprom.h> - funkcje dostpu do wewntrznej pamici EEPROM <avr/interrupt.h> - funkcje obsługi przerwa <avr/io.h> - definicje rejestrów i bitów I/O (dołcza właciwe dla danego uc) <avr/pgmspace.h> - fukncje dostpu do pamici programu <avr/power.h> - funkcje zarzdzania energi <avr/sfr_defs.h> - funkcje operujce na rejestrach funkcyjnych 9
10 Moduły biblioteki avr-libc w wersji 1.4.7, cd: <avr/sleep.h>- funkcje zarzdzania trybami energooszczdnymi <avr/version.h> - makra wersji <avr/wdt.h> - funkcje obsługi Watchdoga <util/crc16.h> - obliczanie sum CRC <util/delay.h> - funkcje realizujce opónienia <util/delay_basic.h> - funkcje realizujce podstawowe opónienia <util/parity.h> - generowanie bitu parzystoci <util/twi.h> - definicje masek interfejsu TWI <compat/deprecated.h>- informacje o przestarzałych funkcjach <compat/ina90.h> - funkcje zapewniajce kompatybilno z IAR EWB 3.x Projekty przykładowe: kompilacja plików C i asemblerowych prosty projekt projekt bardziej złoony uywanie standardowych narzdzi I/O przykład uycia interfejsu TWI 10
11 Przykłady funkcji modułu <ctype.h> int isalpha (int c ) sprawdza, czy dana jest znakiem alfanumercznym int isascii (int c ) sprawdza, czy dana jest znakiem ASCII int isblank (int c ) - sprawdza, czy dana jest znakiem spacji lub tabulacji int isdigit (int c ) - sprawdza, czy dana jest cyfr dziesitn int toascii (int c ) konwertuje dan do znaku ASCII int tolower (int c ) - konwertuje wielk liter do małej int toupper (int c ) - konwertuje liter mał do wielkiej 11
12 Przykłady funkcji modułu <math.h> Trygonometryczne: double acos (double x ) arcus cosinus double asin (double x ) arcus sinus double atan (double x ) arcus tangens double atan2 (double y, double x ) arcus tangens x/y w danej wiartce double cos (double x ) - cosinus double cosh (double x ) cosinus hiperboliczny double sin (double x ) - sinus double sinh (double x ) sinus hiperboliczny double tan (double x ) - tangns double tanh (double x ) arcus tangens 12
13 Przykłady funkcji modułu <math.h> Zaokrglenia: double ceil (double x ) zaokrglenie w gór double floor (double x ) zaokrglenie w dół Potgi i pierwiastki: double exp (double x ) - eksponent double ldexp (double x, int exp ) iloczyn liczby x i potgi exp liczby 2 double pow (double x, double y ) potga y liczby x double square (double x ) kwadrat x double sqrt (double x ) pierwiastek kwadratowy x 13
14 Moduł <stdio.h> W module s implementowane podstawowe operacje I/O. Ze wzgldu na brak typowych urzdze wejcia wyjcia zakłada si kojarzenie strumieni I/O z jednym z portów szeregowych mikrokontrolera. Definicje: #define FILE struct file #define stdin ( iob[0]) #define stdout ( iob[1]) #define stderr ( iob[2]) #define EOF (-1) #define fdev_set_udata(stream, u) do { (stream)->udata = u; } while(0) #define fdev_get_udata(stream) ((stream)->udata) #define fdev_setup_stream(stream, put, get, rwflag) 14
15 Moduł <stdio.h> Definicje, cd: Biblioteka avr-libc #define _FDEV_SETUP_READ SRD #define _FDEV_SETUP_WRITE SWR #define _FDEV_SETUP_RW ( SRD SWR) #define _FDEV_ERR (-1) #define _FDEV_EOF (-2) #define FDEV_SETUP_STREAM(put, get, rwflag) #define fdev_close() #define putc( c, stream) fputc( c, stream) #define putchar( c) fputc( c, stdout) #define getc( stream) fgetc( stream) #define getchar() fgetc(stdin) 15
16 Funkcje modułu <stdio.h> int fclose (FILE * stream) int vfprintf (FILE * stream, const char * fmt, va_list ap) int vfprintf_p (FILE * stream, const char * fmt, va_list ap) int fputc (int c, FILE * stream) int printf (const char * fmt,...) int printf_p (const char * fmt,...) int vprintf (const char * fmt, va_list ap) int sprintf (char * s, const char * fmt,...) int sprintf_p (char * s, const char * fmt,...) int snprintf (char * s, size_t n, const char * fmt,...) int snprintf_p (char * s, size_t n, const char * fmt,...) int vsprintf (char * s, const char * fmt, va_list ap) int vsprintf_p (char * s, const char * fmt, va_list ap) int vsnprintf (char * s, size_t n, const char * fmt, va_list ap) int vsnprintf_p (char * s, size_t n, const char * fmt, va_list ap) int fprintf (FILE * stream, const char * fmt,...) int fprintf_p (FILE * stream, const char * fmt,...) 16
17 Funkcje modułu <stdio.h>, cd. int fputs (const char * str, FILE * stream) int fputs_p (const char * str, FILE * stream) int puts (const char * str) int puts_p (const char * str) size_t fwrite (const void * ptr, size_t size, size_t nmemb, FILE * stream) int fgetc (FILE * stream) int ungetc (int c, FILE * stream) char * fgets (char * str, int size, FILE * stream) char * gets (char * str) size_t fread (void * ptr, size_t size, size_t nmemb, FILE * stream) void clearerr (FILE * stream) int feof (FILE * stream) int ferror (FILE * stream) 17
18 Funkcje modułu <stdio.h>, cd. int vfscanf (FILE * stream, const char * fmt, va_list ap) int vfscanf_p (FILE * stream, const char * fmt, va_list ap) int fscanf (FILE * stream, const char * fmt,...) int fscanf_p (FILE * stream, const char * fmt,...) int scanf (const char * fmt,...) int scanf_p (const char * fmt,...) int vscanf (const char * fmt, va_list ap) int sscanf (const char * buf, const char * fmt,...) int sscanf_p (const char * buf, const char * fmt,...) int fflush (FILE *stream) FILE * fdevopen (int(*put)(char, FILE *), int(*get)(file *)) 18
19 Ograniczenia funkcji modułu <stdio.h>: Ze wzgldu na brak systemu operacyjnego nie ma faktycznej implementacji systemu plików Standardowe strumienie stdin, stdout i stderr s dostpne, ale musz by otwarte za pomoc funkcji fdevopen(), kojarzcej strumie z urzdzeniem wysyłajcym i odbierajcym znaki Implementacja funkcji printf() i scanf() jest skomplikowana i nie zaleca si ich uywa (zamiast nich wskazane jest uywa: vprintf() i vscanf() ) 19
20 Przykładowy program korzystajcy z modułu <stdio.h>: #include <stdio.h> static int uart_putchar(char c, FILE *stream); static FILE mystdout = FDEV_SETUP_STREAM(uart_putchar, NULL, _FDEV_SETUP_WRITE); static int uart_putchar(char c, FILE *stream) { if (c == '\n') uart_putchar('\r', stream); loop_until_bit_is_set(ucsra, UDRE); UDR = c; return 0; } int main(void) { init_uart(); stdout = &mystdout; printf("hello, world!\n"); return 0; } 20
21 Moduł <avr/io.h> Moduł zawiera definicje rejestrów bitów i kocówek I/O dla mikrokontrolera W rzeczywistoci dołczony zostaje moduł <avr/ioxxxx.h> definiujcy I/O wybranego mikrokontrolra na podstawie opcji wywołania kompilatora -mmcu= typ_mikrokontrolera Moduł dołcza moduły: avr/sfr_defs.h, avr/portpins.h, avr/common.h i avr/version.h W module s zdefiniowane makra: RAMEND stała bdca adresem ostatniej komórki pamici RAM XRAMEND - stała bdca adresem ostatniej komórki zewntrznej pamici RAM E2END stała bdca adresem ostatniej komórki pamici EEPROM FLASHEND stała bdca adresem ostatniej komórki pamici FLASH SPM_PAGESIZE stała okrelajca rozmiar pamici bootloadera w bajtach 21
22 Moduł <stdlib/io.h> Moduł zawiera definicje makr i funkcji wymaganych przez standard jzyka i właciwych dla mikrokontrolerów AVR. Struktury danych: struct div_t, struct ldiv_t Funkcje niestandardowe: char * ltoa (long int val, char * s, int radix) char * utoa (unsigned int val, char * s, int radix) char * ultoa (unsigned long int val, char * s, int radix) long random (void)void srandom (unsigned long seed) long random_r (unsigned long * ctx) char * itoa (int val, char * s, int radix) 22
23 Moduł <stdlib/io.h> Stałe: #define RANDOM_MAX 0x7FFFFFFF Funkcje konwersji dla argumentów podwójnej precyzji: (umieszczone w module libm.a, dołczanej opcj wywołania kompilatora: -lm) char * dtostre (double val, char * s, unsigned char prec, unsigned char flags) char * dtostrf (double val, signed char width, unsigned char prec, char * s) #define DTOSTR_ALWAYS_SIGN 0x01 #define DTOSTR_PLUS_SIGN 0x02 #define DTOSTR_UPPERCASE 0x04 23
24 Moduł <stdlib/io.h> Definicje: #define RAND_MAX 0x7FFF typedef int(*) compar_fn_t (const void *, const void *) Funkcje: void abort (void) ATTR_NORETURN int abs (int i) long labs (long i) void * bsearch (const void * key, const void * base, size_t nmemb, size_t size, int(* compar)(const void *, const void *)) div_t div (int num, int denom) asm (" divmodhi4") ldiv_t ldiv (long num, long denom) asm (" divmodsi4") void qsort (void * base, size_t nmemb, size_t size, compar_fn_t compar) long strtol (const char * nptr, char ** endptr, int base) unsigned long strtoul (const char * nptr, char ** endptr, int base) long atol (const char * s) ATTR_PURE int atoi (const char * s) ATTR_PURE void exit (int status) ATTR_NORETURN 24
25 Moduł <stdlib/io.h> Funkcje, cd: void * malloc (size_t size) ATTR_MALLOC void free (void * ptr) void * calloc (size_t nele, size_t size) ATTR_MALLOC void * realloc (void * ptr, size_t size) ATTR_MALLOC double strtod (const char * nptr, char ** endptr) double atof (const char * nptr) int rand (void) void srand (unsigned int seed) int rand_r (unsigned long * ctx) Zmienne: size_t malloc_margin char * malloc_heap_start char * malloc_heap_end 25
26 Makra modułu <interrupt.h> sei() załcza system przerwa cli() wyłcza system przerwa EMPTY_INTERRUPT (vector ) puste przerwanie (tylko powrót) ISR (vector ) procedura obsługi przerwania o podanym wektorze ISR_ALIAS (vector, target_vector ) powtórzenie obsługi dla nowego wektora reti() powrót z procedury obsługi przerwania Moliwe kombinacje parametrów: ISR(vector, ISR_NOBLOCK) - procedura obsługi przerwania nie blokuje kolejnych przerwa ISR(vector, ISR_NAKED) - procedura obsługi przerwania definiowana w pełni przez uytkownika (równie prolog i epilog) 26
27 Uycie makr modułu <interrupt.h> Przykład: ISR(INT0_vect) { PORTB = 42; } ISR_ALIAS(INT1_vect, INT0_vect); 27
Komunikacja w mikrokontrolerach. Podstawy programowania. Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski
Komunikacja w mikrokontrolerach Podstawy programowania Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. AVR
Bardziej szczegółowoFunkcje standardowej biblioteki wejść-wyjść do wyświetlania i pobierania danych
Funkcje standardowej biblioteki wejść-wyjść do wyświetlania i pobierania danych Przykłady wykorzystanie funkcji printf i scanf do wyświetlania danych na wyświetlaczu LCD oraz komunikacji sterownika mikroprocesorowego
Bardziej szczegółowowykład III uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - zarządzanie pamięcią, struktury,
, Programowanie, uzupełnienie notatek: dr Jerzy Białkowski , 1 2 3 4 , Wczytywanie liczb , Wczytywanie liczb 1 #include 2 #include < s t d l i b. h> 3 4 int main ( ) { 5 int rozmiar, numer
Bardziej szczegółowoWskaźniki do funkcji. Wykład 11. Podstawy programowania ( język C ) Wskaźniki do funkcji (1) Wskaźniki do funkcji (2)
Podstawy programowania ( język C ) Wskaźniki do funkcji Wykład 11. Tomasz Marks - Wydział MiNI PW -1- Tomasz Marks - Wydział MiNI PW -2- Wskaźniki do funkcji (1) W języku C funkcje nie są zmiennymi, ale
Bardziej szczegółowoFunkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1
Funkcje czyli jak programować proceduralne. Programowanie Proceduralne 1 Struktura programu w C # include / Dyrektywy p r e p r o c e s o r a / #define PI 3.1415 float g =. 5 ; / Zmienne
Bardziej szczegółowoFunkcje zawarte w bibliotece < io.h >
PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece
Bardziej szczegółowoFunkcje zawarte w bibliotece < io.h >
PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece
Bardziej szczegółowoGhost in the machine
Operacje na pami eci i odrobina I/O Zak lad Chemii Teoretycznej UJ 8 stycznia 2007 Funkcje operujace Wstep do operacji I/O na plikach 1 Operacje na pami eci 2 Funkcje operujace 3 Wst Funkcje operujace
Bardziej szczegółowoBiblioteka standardowa - operacje wejścia/wyjścia
Biblioteka standardowa - operacje wejścia/wyjścia Przemysław Gawroński D-10, p. 234 Wykład 6 15 stycznia 2019 (Wykład 6) Biblioteka standardowa - operacje wejścia/wyjścia 15 stycznia 2019 1 / 14 Outline
Bardziej szczegółowoFunkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1
Funkcje czyli jak programować proceduralne. Programowanie Proceduralne 1 Struktura programu w C # include # define PI 3. 1415 float g =. 5 ; float kwadrat ( float x ) { return x x ; } int
Bardziej szczegółowoOperacje na plikach. Informatyka. Standardowe strumienie wejścia i wyjścia
Materiały Operacje na plikach Informatyka Operacje wejścia-wyjścia w C/C++: Podejście proceduralne Podejście obiektowe Standardowe strumienie wejścia i wyjścia stdin - strumień wejściowy (klawiatura) cin
Bardziej szczegółowoTablice, funkcje - wprowadzenie
Tablice, funkcje - wprowadzenie Przemysław Gawroński D-10, p. 234 Wykład 5 25 marca 2019 (Wykład 5) Tablice, funkcje - wprowadzenie 25 marca 2019 1 / 12 Outline 1 Tablice jednowymiarowe 2 Funkcje (Wykład
Bardziej szczegółowoFunkcje matematyczne w C. Programowanie w C Marek Pudełko
Funkcje matematyczne w C Programowanie w C Marek Pudełko Używanie funkcji matematycznych W standardowym ANSI C jest możliwe skorzystanie z 22 funkcji matematycznych. By to zrobić, do programu należy włączyć
Bardziej szczegółowo۰ Elementem jednostkowym takiego pliku jest bajt. ۰ Format pliku binarnego: [bajty pliku][eof]
1 Plik jest wydzielonym fragmentem pamięci (najczęściej dyskowej) posiadającym nazwę. Z punktu widzenia C plik jest ciągiem bajtów, z których każdy może zostać oddzielnie odczytany. Zgodnie ze standardem
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część jedenasta Przetwarzanie plików amorficznych Konwencja języka C Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoObsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1. Kraków 2013
Laboratorium Podstaw Informatyki Strona 1 Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Obsługa plików Kraków 2013 Laboratorium Podstaw Informatyki Strona 2 Obsługa plików Zanim będziemy mogli
Bardziej szczegółowoWstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 12. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 12 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji (1) Obsługa łańcuchów znakowych getchar(), putchar()
Bardziej szczegółowoWykład VI. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik
Wykład VI Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Operacje na plikach Operacje na plikach Aby móc korzystać z pliku należy go otworzyć w odpowiednim
Bardziej szczegółowoFunkcja (podprogram) void
Funkcje Co to jest funkcja? Budowa funkcji Deklaracja, definicja i wywołanie funkcji Przykłady funkcji definiowanych przez programistę Przekazywanie argumentów do funkcji Tablica jako argument funkcji
Bardziej szczegółowower. 7 z drobnymi modyfikacjami Wojciech Myszka :48:
Wejście/Wyjście wer. 7 z drobnymi modyfikacjami Wojciech Myszka 2014-05-12 16:48:03 +0200 Strumienie 1. W czasach przed-uniksowych program wykonujący operacje wejścia/wyjścia musiał podłączyć wszystkie
Bardziej szczegółowo3 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 3 1/8 Język C Instrukcja laboratoryjna Temat: Instrukcje warunkowe, pętle. 3 Przygotował: mgr inż. Maciej Lasota 1) Instrukcje warunkowe. Instrukcje warunkowe pozwalają zdefiniować warianty
Bardziej szczegółowoĆwiczenie 4. Obsługa plików. Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Laboratorium Podstaw Informatyki Strona 1.
Laboratorium Podstaw Informatyki Strona 1 Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Ćwiczenie 4 Obsługa plików Kraków 2010 Laboratorium Podstaw Informatyki Strona 2 Obsługa plików Zanim
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje raz jeszcze. Biblioteka standardowa. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje raz jeszcze. Biblioteka standardowa. Krzysztof Banaś Podstawy programowania 1 Rekurencja W języku C funkcja może wywoływać sama siebie int funkcja_rekur(int nr_wyw){
Bardziej szczegółowoProgramowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Wskaźnik do pliku Dostęp do pliku: zapis, odczyt,
Bardziej szczegółowoŚrodowisko Keil. Spis treści. Krzysztof Świentek. Systemy wbudowane. 1 Trochę teorii. 2 Keil
Środowisko Krzysztof Świentek Systemy wbudowane Spis treści 1 2 Źródła 1 http://infocenter.arm.com 2 http://www.keil.com/arm/mdk.asp 3 http://pl.wikipedia.org Spis treści 1 2 Co to jest toolchain? Zbiór
Bardziej szczegółowoFormatowane (tekstowe) wejście/wyjście. Binarne wejście/wyjście.
Formatowane (tekstowe) wejście/wyjście. Binarne wejście/wyjście. wer. 10 z drobnymi modyfikacjami! Wojciech Myszka 2018-03-27 09:06:38 +0200 Część I Formatowane (tekstowe) wejście/wyjście Otwarcie pliku
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część jedenasta Reprezentacja i przetwarzanie plików Konwencja języka C Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część jedenasta Reprezentacja i przetwarzanie plików Konwencja języka C Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoISO/ANSI C dostęp do plików ISO/ANSI C. ISO/ANSI C dostęp do plików. ISO/ANSI C dostęp do plików. ISO/ANSI C dostęp do plików
Plik to uporządkowany ciąg danych Dostęp do danych w pliku jest sekwencyjny, tj. istnieje pojęcie elementu aktualnego (tzw. wskaźnika pliku). Możliwy dostęp do danych w pliku jest tylko tam, gdzie wskazuje
Bardziej szczegółowoStałe. Funkcje standardowe. Niektóre stałe i funkcje z pliku nagłówkowego math.h. M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2
Niektóre stałe i funkcje z pliku nagłówkowego math.h. Stałe Identyfikator M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2 M_PI_4 M_1_PI M_2_PI M_1_SQRTPI M_2_SQRTPI Znaczenie e log 2 (e) log 10 (e) ln(2)
Bardziej szczegółowoISO/ANSI C dostęp do plików ISO/ANSI C. ISO/ANSI C dostęp do plików. ISO/ANSI C dostęp do plików. ISO/ANSI C dostęp do plików
ISO/ANSI C Dostęp do plików w trybie tekstowym znak po znaku Czytanie z pliku int fgetc( FILE *stream ); char buffer[81]; int i, ch; if((stream = fopen("test.txt","r")) == NULL ) exit( 0 ); ch
Bardziej szczegółowoŁącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi.
Przykład: $ ls more Łącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi. Tworzenie łącza #include int pipe(int filedes[2]); Przykład: int
Bardziej szczegółowoW języku C każdy plik fizyczny jest ciągiem bajtów, z których każdy może być niezależnie odczytany. Borland 01234
Dr inż. Robert Wójcik Zakład Podstaw Informatyki i Teleinformatyki Instytut Cybernetyki Technicznej, Politechnika Wrocławska Wykład 15 15. Obsługa plików 15.1. Pliki tekstowe i binarne 15.2. Standardowa
Bardziej szczegółowoPliki. Informacje ogólne. Obsługa plików w języku C
Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych. Może posiadać określone atrybuty, a odwołanie do niego odbywa się poprzez nazwę. Każdy plik ma skończoną
Bardziej szczegółowoINFORMATYKA Studia Niestacjonarne Elektrotechnika
INFORMATYKA Studia Niestacjonarne Elektrotechnika Wydział Elektrotechniki i Informatyki dr inż. Michał Łanczont Wydział Elektrotechniki i Informatyki p. E419 tel. 81-538-42-93 m.lanczont@pollub.pl http://lanczont.pollub.pl
Bardziej szczegółowoPliki. Informacje ogólne. Obsługa plików w języku C
Pliki Informacje ogólne Plik jest pewnym zbiorem danych, zapisanym w systemie plików na nośniku danych (np. dysku twardym, pendrive, płycie DVD itp.). Może posiadać określone atrybuty, a odwołanie do niego
Bardziej szczegółowoJęzyki programowania. Przetwarzanie plików amorficznych Konwencja języka C. Część siódma. Autorzy Tomasz Xięski Roman Simiński
Języki programowania Część siódma Przetwarzanie plików amorficznych Konwencja języka C Autorzy Tomasz Xięski Roman Simiński Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie
Bardziej szczegółowoStałe i zmienne znakowe. Stała znakowa: znak
Stałe i zmienne znakowe. Stała znakowa: znak Na przykład: a, 1, 0 c Każdy znak jest reprezentowany w pamięci przez swój kod. Kody alfanumerycznych znaków ASCII to liczby z przedziału [32, 127]. Liczby
Bardziej szczegółowoGrzegorz Cygan. Wstęp do programowania mikrosterowników w języku C
Grzegorz Cygan Wstęp do programowania mikrosterowników w języku C Mikrosterownik Inne nazwy: Microcontroler (z języka angielskiego) Ta nazwa jest powszechnie używana w Polsce. Mikrokomputer jednoukładowy
Bardziej szczegółowoMATERIAŁY POMOCNICZE PODSTAWY PROGRAMOWANIA Na podstawie: Programowanie w C - Stworzone na Wikibooks, bibliotece wolny podręczników
MATERIAŁY POMOCNICZE PODSTAWY PROGRAMOWANIA Na podstawie: Programowanie w C - Stworzone na Wikibooks, bibliotece wolny podręczników Funkcja getchar() Jest to bardzo prosta funkcja, wczytująca 1 znak z
Bardziej szczegółowoSzkic wykładu Wstęp do Informatyki - wykład 3,4,5 język C opr. A. Piórkowski, Kraków 2004
1. Języki niskiego i wysokiego poziomu Interpreter Kompilator 2. Język C Powstał w 1972 roku, autor: Dennis Ritchie. Służył i służy przede wszystkim do programowania w systemie UNIX, istnieją liczne kompilatory
Bardziej szczegółowoPODSTAW PROGRAMOWANIA WYKŁAD 7 ŁAŃCUCHY
PODSTAW PROGRAMOWANIA WYKŁAD 7 ŁAŃCUCHY Łańcuch tekstowy w języku c jest pamiętany jako jednowymiarowa tablica znaków zakończona bajtem 0. char * tekst = dzień dobry wszystkim ; char tekst[22]= dzień dobry
Bardziej szczegółowoISO/ANSI C dostęp do plików ISO/ANSI C. ISO/ANSI C dostęp do plików. ISO/ANSI C dostęp do plików. ISO/ANSI C dostęp do plików
Plik to uporządkowany ciąg danych Dostęp do danych w pliku jest sekwencyjny, tj. istnieje pojęcie elementu aktualnego (tzw. wskaźnika pliku). Możliwy dostęp do danych w pliku jest tylko tam, gdzie wskazuje
Bardziej szczegółowo2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania
Bardziej szczegółowoJęzyki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.
Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym
Bardziej szczegółowoTablice w argumentach funkcji. Tablicy nie są przekazywane po wartości Tablicy są przekazywane przez referencje lub po wskaźniku
Tablice w argumentach funkcji Tablicy nie są przekazywane po wartości Tablicy są przekazywane przez referencje lub po wskaźniku Przykład: char str[] = abcdef ;... fun(str); // argument faktyczny to id
Bardziej szczegółowoProgramowanie w językach wysokiego poziomu
Programowanie w językach wysokiego poziomu zajęcia nr 2 Elektronika i Telekomunikacja, semestr III rok akademicki 2014/2015 Plan dzisiejszych zajęć Pliki tekstowe 1. Operacje na plikach - wprowadzenie
Bardziej szczegółowoProgramowanie Proceduralne
Programowanie Proceduralne Pliki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 12 Operacje plikowe Plik - dokument lub inny zbiór danych zapisany na dysku, oznaczony unikatowa
Bardziej szczegółowoJęzyk C : szkoła programowania / Stephen Prata. Gliwice, cop Spis treści
Język C : szkoła programowania / Stephen Prata. Gliwice, cop. 2016 Spis treści O autorze 19 Przedmowa 21 Rozdział 1. Zaczynamy 23 Skąd C? 23 Dlaczego C? 24 Cechy użytkowe 25 Efektywność 25 Przenośność
Bardziej szczegółowoKatedra Elektrotechniki Teoretycznej i Informatyki. wykład 7- sem.iii. M. Czyżak
Katedra Elektrotechniki Teoretycznej i Informatyki wykład 7- sem.iii M. Czyżak Język C tablice znaków Tablice znaków (łańcuchy) Tablice znaków stanowią specjalny rodzaj tablic o budowie ułatwiającej przetwarzanie
Bardziej szczegółowoProgramowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni. Wykład 6. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411b Plan wykładu Operacje wejścia-wyjścia Dostęp do plików Struktury
Bardziej szczegółowoMETODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się
Bardziej szczegółowoKatedra Elektrotechniki Teoretycznej i Informatyki. wykład 9 - sem.iii. Dr inż. M. Czyżak
Katedra Elektrotechniki Teoretycznej i Informatyki wykład 9 - sem.iii Dr inż. M. Czyżak Język ANSI C tablice znaków Tablice znaków (łańcuchy) Tablice znaków stanowią specjalny rodzaj tablic o budowie ułatwiającej
Bardziej szczegółowoOperacje na plikach (niskiego poziomu) < IO.H >
OPERACJE WEJŚCIA WYJŚCIA (część b) Operacje wejścia / wyjścia odczyt i zapis danych do róŝnych zewnętrznych urządzeń lub nośników pamięciowych komputera: np. klawiatury, ekranu monitora, dyskietki, czytnika
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część trzynasta Tablice struktur, pliki struktur Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści
Bardziej szczegółowoTemat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,
Bardziej szczegółowoInformatyka 1. Plan dzisiejszych zajęć. zajęcia nr 11. Elektrotechnika, semestr II rok akademicki 2008/2009
Informatyka 1 zajęcia nr 11 Elektrotechnika, semestr II rok akademicki 2008/2009 mgr inż.. Paweł Myszkowski Plan dzisiejszych zajęć 1. Łańcuchy znaków 2. Wprowadzanie i wyprowadzanie znaków w i łańcuchów
Bardziej szczegółowoProgram wykonujący operację na plikach powinien zachować schemat działania zapewniający poprawną pracę:
Rozdział 1 Obsługa plików W językach C pliki powiązane są ze strumieniami i pracuje się na nich podobnie jak na innych strumieniach. W języku C do operacji na plikach służą funkcje z biblioteki stdio.h,
Bardziej szczegółowoProgramowanie Proceduralne
Programowanie Proceduralne Struktury Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 10 Co dziś będzie: Definiowanie struktury Deklarowanie zmiennych bȩda cych strukturami
Bardziej szczegółowoWskaźniki. Przemysław Gawroński D-10, p marca Wykład 2. (Wykład 2) Wskaźniki 8 marca / 17
Wskaźniki Przemysław Gawroński D-10, p. 234 Wykład 2 8 marca 2019 (Wykład 2) Wskaźniki 8 marca 2019 1 / 17 Outline 1 Wskaźniki 2 Tablice a wskaźniki 3 Dynamiczna alokacja pamięci (Wykład 2) Wskaźniki 8
Bardziej szczegółowoOperacje na łańcuchach znaków
Operacje na łańcuchach znaków wer. 6 z drobnymi modyfikacjami Wojciech Myszka 2014-02-09 16:32:23 +0100 Łańcuch znaków 1. Z łańcuchów znaków korzystamy powszechnie. 2. Najprostszy przykład: p r i n t f
Bardziej szczegółowoOPERACJE WEJŚCIA / WYJŚCIA. wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout)
OPERACJE WEJŚCIA / WYJŚCIA Funkcja: printf() biblioteka: wysyła sformatowane dane do standardowego strumienia wyjściowego (stdout) int printf ( tekst_sterujący, argument_1, argument_2,... ) ;
Bardziej szczegółowoOperacje wejścia/wyjścia odsłona pierwsza
Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania obiektowego.
Bardziej szczegółowoPlik jest reprezentowany przez strumień znaków (bajtów) o zmiennej długości. Koniec strumienia identyfikowany jest znacznikiem końca pliku EOF.
Pliki w C++ Plik jest reprezentowany przez strumień znaków (bajtów) o zmiennej długości. Koniec strumienia identyfikowany jest znacznikiem końca pliku EOF. Z każdym strumieniem związany jest wskaźnik bieżącej
Bardziej szczegółowoPodstawy programowania. Wykład 6 Wskaźniki. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład 6 Wskaźniki Krzysztof Banaś Podstawy programowania 1 Adresy zmiennych Język C pozwala na operowanie adresami w pamięci stąd, między innymi, kwalifikowanie C jako języka relatywnie
Bardziej szczegółowoPODSTAWY PROGRAMOWANIA W C. Bibliografia W-1. Dr. Inż. Hab. Siergiej Fialko, PK,
PODSTAWY PROGRAMOWANIA W C Dr. Inż. Hab. Siergiej Fialko, PK, sfialko@riad.pk.edu.pl http://torus.uck.pk.edu.pl/~fialko Bibliografia 1. B.M. Kernighan and D.M. Ritchie. Język C. WNT, Warszawa, 1988 2.
Bardziej szczegółowoStruktura programu. Słowa kluczowe. Komentarze. Zmienne
Struktura programu #include int main (int argc, char **argv) // instrukcje Słowa kluczowe Słowa o predefiniowanym znaczeniu. Nie mogą być użyte jako identyfikatory (np. nazwy zmiennych). Do słów
Bardziej szczegółowoargumenty wiersza poleceń: getopt
argumenty wiersza poleceń: getopt #include /* getopt2.c getopt2.c */ #include #include { int main(int argc, char *argv[]) int n; int opt; printf("\n argc=%d\n",argc); for(n=0;n
Bardziej szczegółowoWstęp. do języka C na procesor 8051. (kompilator RC51)
Wstęp do języka C na procesor 8051 (kompilator RC51) Kompilator języka C Kompilator RC51 jest kompilatorem języka C w standardzie ANSI Ograniczeń w stosunku do ANSI jest niewiele głównie rzadkie operacje
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2014/2015 Wykład nr 1 (09.10.2014) Rok akademicki 2014/2015, Wykład
Bardziej szczegółowoJęzyk C. Szkoła programowania. Wydanie VI
Dane aktualne na dzień: 08-01-2018 20:59 Link do produktu: https://sklep.celiko.net.pl/jezyk-c-szkola-programowania-wydanie-vi-p-2868.html Język C. Szkoła programowania. Wydanie VI Cena internetowa Cena
Bardziej szczegółowoPodstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Pętle. Tablice. Krzysztof Banaś Podstawy programowania 1 Pętle Pętla jest konstrukcją sterującą stosowaną w celu wielokrotnego wykonania tego samego zestawu instrukcji jednokrotne
Bardziej szczegółowoĆwiczenie nr 6. Poprawne deklaracje takich zmiennych tekstowych mogą wyglądać tak:
Ćwiczenie nr 6 Temat: Operacje na łańcuchach znaków. Zagadnienia: Zasady pracy z łańcuchami tekstowymi (tablice wartości typu char). funkcje standardowe operacji na łańcuchach, funkcje I/O dla operacji
Bardziej szczegółowoStruktury czyli rekordy w C/C++
Struktury czyli rekordy w C/C++ Wprowadzenie do programowania w języku C struktury. pola bitowe, unie Struktury (rekordy) są złożonymi zmiennymi, składającymi się z elementów różnych typów zwanych polami,
Bardziej szczegółowoJęzyki programowania. Karolina Mikulska-Rumińska Pokój 573, tel Konsultacje wtorek 9-10.
Języki programowania Karolina Mikulska-Rumińska E-mail: karolamik@fizyka.umk.pl Pokój 573, tel. 3346 Konsultacje wtorek 9-10. Pliki Dwa rodzaje plików: Tekstowe, Binarne Aby otworzyć plik należy najpierw
Bardziej szczegółowoPROGRAMOWANIE w C prolog
PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014
Bardziej szczegółowo4. Tablica dwuwymiarowa to jednowymiarowa tablica wskaźników do jednowymiarowych tablic danego typu.
Języki i paradygmaty programowania 1 studia stacjonarne 2018/19 Lab 6. Tablice znakowe o dwóch indeksach, przekazywanie tablic do funkcji cd., dynamiczna alokacja pamięci, funkcje przetwarzające ciągi
Bardziej szczegółowoWstęp do Programowania, laboratorium 02
Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite
Bardziej szczegółowoJęzyki i metody programowania I
Języki i metody programowania I dr inż. Piotr Szwed Katedra Informatyki Stosowanej C2, pok. 403 e-mail: pszwed@agh.edu.pl http://home.agh.edu.pl/~pszwed/ Aktualizacja: 2013-01-25 11. Biblioteka wejścia
Bardziej szczegółowoPolitechnika Białostocka, Wydział Elektryczny, Katedra Elektrotechniki Teoretycznej i Metrologii ul. Wiejska 45D, Białystok
Rok akademicki 2015/2016, Wykład nr 1 2/70 Dane podstawowe Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2015/2016
Bardziej szczegółowoPodział programu na moduły
Materiały Podział programu na moduły Informatyka Szczegółowe informacje dotyczące wymagań odnośnie podziału na moduły: http://www.cs.put.poznan.pl/wcomplak/bfiles/c_w_5.pdf Podział programu na moduły pozwala
Bardziej szczegółowoKompilator języka C na procesor 8051 RC51 implementacja
Kompilator języka C na procesor 8051 RC51 implementacja Implementowane typy danych bit 1 bit char lub char signed 8 bitów char unsigned 8 bitów int lub signed int 16 bitów unsigned int 16 bitów long lub
Bardziej szczegółowoSystemy wbudowane. Wprowadzenie. Struktura. Mikrokontrolery AVR. Wprowadzenie do programowania w C
Systemy wbudowane Mikrokontrolery AVR Wprowadzenie do programowania w C dr inż. Maciej Piechowiak Wprowadzenie język C jest językiem strukturalnym wysokiego poziomu, jednak działającym blisko sprzętu i
Bardziej szczegółowoProgramowanie strukturalne język C - wprowadzenie
Programowanie strukturalne język C - wprowadzenie Dr inż. Sławomir Samolej D102 C, tel: 865 1766, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl Cechy programowania strukturalnego Możliwość
Bardziej szczegółowoStrumienie i pliki. Programowanie Proceduralne 1
Strumienie i pliki. Programowanie Proceduralne 1 Ogólnie o plikach Plik - ciąg bajtów o skończonej długości Nawa pliku nie stanowi jego części Położenie pliku określone przez ścieżkę dostępu Pliki są opatrzone
Bardziej szczegółowoISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje
Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych
Bardziej szczegółowoWstęp do programowania 1
Wstęp do programowania 1 Struktury Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 12 Struktura dla dat - przykład #include struct Date { int y; short m; short
Bardziej szczegółowo1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998.
Literatura Język C 1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998. 2. Andrzej Zalewski, Programowanie w językach C i C++ z wykorzystaniem pakietu Borland C++, Nakom, Poznań
Bardziej szczegółowoLaboratorium 6: Ciągi znaków. mgr inż. Leszek Ciopiński dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski
Laboratorium 6: Ciągi znaków mgr inż. Leszek Ciopiński dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski 17 listopada 2016 1. Wprowadzenie Instrukcja poświęcona jest zmiennym, które służą do przechowywania
Bardziej szczegółowoJęzyki programowania wysokiego poziomu. PHP cz.2.
Języki programowania wysokiego poziomu PHP cz.2. Instrukcje strukturalne PHP Instrukcje strukturalne Instrukcja grupująca (blok instrukcji) Instrukcja warunkowa, if-else Instrukcja wyboru, switch-case
Bardziej szczegółowoPodstawy programowania C. dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/
Podstawy programowania C dr. Krystyna Łapin http://www.mif.vu.lt/~moroz/c/ Tematy Struktura programu w C Typy danych Operacje Instrukcja grupująca Instrukcja przypisania Instrukcja warunkowa Struktura
Bardziej szczegółowoTablice deklaracja, reprezentacja wewnętrzna
Tablice deklaracja, reprezentacja wewnętrzna Tablica jest zmienną złożoną z elementów tego samego typu. Obejmuje ona ciągły obszar pamięci operacyjnej dokładnie tak duży, aby zmieścić wszystkie jej elementy.
Bardziej szczegółowoCo to jest sterta? Sterta (ang. heap) to obszar pamięci udostępniany przez system operacyjny wszystkim działającym programom (procesom).
Zarządzanie pamięcią Pamięć: stos i sterta Statyczny i dynamiczny przydział pamięci Funkcje ANSI C do zarządzania pamięcią Przykłady: Dynamiczna tablica jednowymiarowa Dynamiczna tablica dwuwymiarowa 154
Bardziej szczegółowoZMIENNE P R O G R A M O W A N I E C + +
ZMIENNE P R O G R A M O W A N I E C + + Głównym zadaniem programów przedstawianych na poprzednich zajęciach było wyświetlanie tekstu. Napiszemy teraz prosty program wykorzystujący podczas działania także
Bardziej szczegółowoOperacje powiązane z systemem:
PLIKI Operacje powiązane z systemem: funkcje biblioteczne stand. biblioteki C, libc; wykonywane jak wywołania innych funkcji; mogą wywoływać inne funkcje lub wywołania systemowe) wywołania systemowe zaimplementowane
Bardziej szczegółowoPolitechnika Białostocka, Wydział Elektryczny, Katedra Elektrotechniki Teoretycznej i Metrologii ul. Wiejska 45D, Białystok
Rok akademicki 2014/2015, Wykład nr 1 2/66 Dane podstawowe Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2014/2015
Bardziej szczegółowoWykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik
Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor
Bardziej szczegółowoCo nie powinno być umieszczane w plikach nagłówkowych:
Zawartość plików nagłówkowych (*.h) : #include #define ESC 27 dyrektywy dołączenia definicje stałych #define MAX(x,y) ((x)>(y)?(x):(y)) definicje makr int menu(char* tab[], int ilosc); struct
Bardziej szczegółowoProgramowanie w C++ Wykład 3. Katarzyna Grzelak. 12 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 35
Programowanie w C++ Wykład 3 Katarzyna Grzelak 12 marca 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 35 Zakres ważności obiektów K.Grzelak (Wykład 1) Programowanie w C++ 2 / 35 Zakres ważności obiektów
Bardziej szczegółowoPodstawy programowania. Wykład Co jeszcze... Przypomnienia, uzupełnienia. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Co jeszcze... Przypomnienia, uzupełnienia Krzysztof Banaś Podstawy programowania 1 Typy danych Podstawowe wbudowane typy danych języka C: _Bool 0 i 1 (C99) znaki (char) 7
Bardziej szczegółowo