Programowanie w C Typ wskaźnikowy do typu znakowego i operacje na łańcuchach
|
|
- Grażyna Dorota Wojciechowska
- 7 lat temu
- Przeglądów:
Transkrypt
1 Programowanie w C Typ wskaźnikowy do typu znakowego i operacje na łańcuchach Artur Opaliński (pokój E112) (p. wykład administracyjny) URL: (p. wykład administracyjny)
2 Treść wykładu Podstawowe funkcje i operacje na łańcuchach Kopiowanie, Sklejanie Wskaźnik do typu znakowego Zaawansowane operacje na łańcuchach Cięcie Przeszukiwanie Konwersje 2
3 Wskaźnik do typu znakowego Deklaracja: char *wskaznik1; char* wskaznik2; //najbezpieczniej //uwypukla typ char*wskaznik3; //bez zalet? :-) Uwaga na: char* zmienna1,zmienna2; //zmienna2 jest typu char! Typ zgodny z typem łańcuchowym Może służyć do wskazania na zmienną łańcuchową, lub jej część Stąd nazwa wskaźnika do typu znakowego, gdyż wskazuje wówczas konkretny znak w łańcuchu Zaś pozostałe znaki łańcucha można znaleźć tuż za nim Jeden wskaźnik do typu znakowego może w jednej chwili wskazywać na tylko jeden znak w łańcuchu 3
4 Wskaźnik do typu znakowego char *wskaznik; char napis[ ]="W stepie szerokim"; Zmienna napis: W s t e p i e s z e r o k i m \0 Zmienna wskaznik: wskaznik nawet nie ma kształtu jak char ;-) 4
5 Wskaźnik do typu znakowego Wskaźnik do typu znakowego różni się od typu łańcuchowego Wskaźnik do typu znakowego nie zawiera łańcucha znaków Nie rezerwuje na to miejsca w pamięci Może tylko wskazać na istniejący już łańcuch (odwoływać się) Zmienna typu łańcuchowego oczywiście może zawierać łańcuch znaków Rezerwuje na łańcuch miejsce w pamięci Nazwa zmiennej łańcuchowej pozwala się do tego zarezerwowanego miejsca odwoływać Konsekwencja: char *wskaznik; char napis[ ]="W stepie szerokim"; wskaznik=napis; // poprawne, wskaznik wskaze na napis 5 // napis=wskaznik; niepoprawne, napis może wskazywać
6 Wskaźnik do typu znakowego Inicjalizacja Zmienna wskaźnikowa może być zainicjalizowana i wskazywać znaki: zawarte w zamiennej łańcuchowej: char napis[ ] ="ktorego okiem nawet nie zmierzysz sokolim"; wskaznik=napis; zawarte w stałej łańcuchowej: wskaznik="stan, unies glowe!"; Inicjalizacja podczas deklaracji: char *wskaznik1="stan, unies glowe!"; char napis[12]; char *wskaznik2=napis; pusty // wskazuje na napis, chwilowo 6
7 Wskaźnik do typu znakowego Podstawowe operacje Wskaźnik może być zainicjalizowany, a mimo to na nic nie wskazywać char *wskaznik=null; Na wskaźnikach można prowadzić operacje arytmetyczne (choć operacje te mają nieco odmienne reguły): char napis[20]="stan, unies glowe!"; char *wskaznik; int dlugoscnapisu; wskaznik=napis; // wskaźnik pokazuje na "Stan, unies glowe!" wskaznik++; // wskaźnik pokazuje na "tan, unies glowe!" wskaźnik=wskaźnik+16; // wskaźnik pokazuje na "!" dlugoscnapisu=wskaznik napis; printf("dlugosc napisu=%d\n", dlugoscnapisu); 7
8 Wskaźnik do typu znakowego Podobieństwa do tablicy znakowej char napis[] ="Burzac pomniki, oszczedzajcie cokoly. Zawsze moga sie przydac. [S.J.Lec]"; int a; // bardziej elegancko: size_t a; a=strlen("burzac "); // na koncu jest spacja; razem 7 znakow // obecna zawartosc 'napis': puts(napis); printf("%s", napis+a); // co znaczy "+a"? puts(napis+a); // co znaczy "+a"? // jaka czesc napisu zmieniamy? fgets(napis+a, sizeof(napis) - a, stdin); // co znaczy "+a", "-a"? // nowa zawartosc 'napis': puts(napis); printf("%s", napis+a); puts(napis+a); // czym sie roznia: printf("%s", napis+a ); printf("%c", napis[a] ); 8
9 Wskaźnik do typu znakowego DEMO: debugger + wskaznik.c #include <stdio.h> #include <string.h> main() { char napis[ ]="W stepie szerokim"; // 17 znakow +1 char *wskaznik; puts(napis); //Pod wieloma względami char* jest jak int: wskaznik=null; wskaznik++; printf("wskaznik=%d (jako int)\n", wskaznik); printf("wskaznik=%p (jako wskaznik w hex)\n", wskaznik); 9
10 Wskaźnik do typu znakowego DEMO: debugger + wskaznik.c (c.d.) wskaznik=napis; // wartosc a wskazywane dane printf("wskazywany tekst=>%s<\n",wskaznik); strcpy(napis,"stan, unies glowe"); printf("wskazywany tekst='%s'\n",wskaznik); /* wskaznik sie NIE zmienil, zmienil sie wskazywany tekst! */ wskaznik=wskaznik+6; // teraz WSKAZNIK sie zmienil puts(wskaznik); // co bedzie? strcpy(wskaznik, "i poloz sie"); //co bedzie? puts(napis); // ryzykowne: zmienic napis[], bez odwolania do niego wskaznik="ktorego okiem nawet sokolim nie zmierzysz"; //gdzie to sie miesci (to 41 znakow+1)? */ puts(wskaznik); 10 puts(napis); }
11 Operacje na łańcuchach Wiele operacji na łańcuchach prowadzi się z użyciem funkcji zdefiniowanych w pliku nagłówkowym string.h Funkcje te często posługują się wskaźnikiem do typu znakowego Znane: strcpy(), strcat(), strlen() 11
12 Operacje na łańcuchach Cięcie łańcuchów Kopiowanie ograniczonej ilości znaków: strncpy() char *strncpy(char *restrict s1, const char *restrict s2, size_t n) Jak wyciąć i skopiować tylko pierwsze 5 znaków łańcucha? char zrodlo[20]; char cel[6]; // 5+1=6 strncpy(cel, zrodlo, 5); Jak wyciąć i skopiować tylko ostatnich 5 znaków łańcucha? char *wskaznik; wskaznik=zrodlo+strlen(zrodlo)-5; strcpy(cel,wskaznik); strncpy() wymaga kontroli, czy nie nastąpi nadpisanie 12 pamięci
13 Operacje na łańcuchach Cięcie łańcuchów Doklejanie ograniczonej ilości znaków: strncat() char *strncat(char *restrict s1, const char *restrict s2, size_t n) Jak wyciąć i dokleić tylko fragment łańcucha? char pelnasciezkapliku[100]; // np.: "C:\Moje Dokumenty\pismo.doc" char komunikat[100]; strcpy(komunikat, "Sciezka wskazuje na dysk "); strncat(komunikat, pelnasciezkapliku, 2); // np. dokleja tylko "C:" 13
14 Operacje na łańcuchach Przeszukiwanie Szukanie znaku w łańcuchu: strchr() char *strchr(const char *s, int c) Jak znaleźć początek słowa w zdaniu? char zdanie[ ]="Nulla dies sine linea."; char *pozycjaspacji; pozycjaspacji=strchr(zdanie,' '); pozycjaspacji++; // przesuniecie na pierwszy znak za spacja1 // mamy już początek drugiego słowa pozycjaspacji=strchr(pozycjaspacji,' '); //szukamy już tylko za spacja1 //mamy drugą spację w zdaniu zapewne początek trzeciego słowa N u l l a d i e s s i n e l i n e a \0 pozycjaspacji
15 Operacje na łańcuchach Przeszukiwanie Szukanie (pod)łańcucha w łańcuchu: strstr() char *strstr(const char *s1, const char *s2) Jak znaleźć słowo sine w zdaniu? char zdanie[ ]="Nulla dies sine linea."; char slowo[ ]="sine"; char *pozycjaslowa; pozycjaslowa = strstr(zdanie, slowo); if ( pozycjaslowa == NULL ) printf("nie znaleziono slowa %s w zdaniu %s\n", slowo, zdanie); N u l l a d i e s s i n e l i n e a \0 pozycjaslowa 1 15
16 Operacje na łańcuchach Przeszukiwanie strchr() oraz strstr() zwracają NULL, jeżeli nie znalazły szukanego elementu NULL - specjalna, zarezerwowana do tego celu stała W wielu kompilatorach równa 0 (pośrednio wynika z zaleceń standardu), ale nie należy na tym polegać Stąd po wywołaniu strchr() lub strstr() należy pamiętać o sprawdzeniu, czy nie zwróciły NULL, np: if(strchr(napis, znak) == NULL) printf( Nie znaleziono znaku %c\n, znak); pozycja = strstr(napis1, napis2); if(pozycja == NULL) printf( Nie znaleziono lancucha %s\n, napis2); 16
17 Podobieństwa i różnice char *i char[ ] char napis1[] ="Burzac pomniki, oszczedzajcie cokoly. Zawsze moga sie przydac. [S.J.Lec]"; char napis2[]="sily"; char *w; w=strstr(napis1, "cokoly"); // wskaznik do slowa printf("szukane slowo rozpoczyna sie pod indeksem:", w-napis1); strcpy(napis1 + w, napis2); strcpy(w, napis2); // niepoprawne. Dlaczego? // co się wydarzy? (c.d.n.) 17
18 Podobieństwa i różnice char *i char[ ] (c.d.) char *napis3="strzez sie Idow Marcowych" ; // Cezar char *napis4="tego, kto czytal jedna ksiazke"; // Casanova w=strstr(napis3, "Idow"); strcpy(w, napis4); // niepoprawne. Dlaczego? napis3=napis1; w=strstr(napis3, "oszczedzajcie"); strcpy(w, napis4); // ktora zmienna zmieni wartosc? if(sizeof(napis1) < strlen(napis3)) //czy jest miejsce? strcpy(napis1, napis3); strcpy(w, napis1); // niepoprawne; w juz wyznaczylismy w=strstr(napis1, "Idow"); strcpy(w, napis4); // jaka bedzie wartoec lancucha? 18
19 Operacje na łańcuchach Porównywanie Porównanie dwóch łańcuchów: strcmp() int strcmp(const char *s1, const char *s2) Równość łańcuchów oznacza identyczność wszystkich znaków na tych samych pozycjach, do '\0' włącznie Równość łańcuchów sygnalizowana jest zwróceniem wartości 0 (zero) W przypadku nierówności łańcuchów, zwracana jest różnica między wartością dwóch pierwszych różniących się bajtów s1 i s2 if(strcmp("jablko", "Pomarancza") == 0) puts("lanuchy sa takie same"); else puts("lanuchy sa rozne"); 19
20 Operacje na łańcuchach Kontrola zbioru znaków Długość początkowej części łańcucha, która składa się wyłącznie z podanych znaków: strspn() size_t strspn(const char *s1, const char *s2) liczbawiodacychbialychznakow = strspn(napis,"\n\t "); lub: liczbawiodacychznakow = strspn(napis," " ); Długość początkowej części łańcucha, która nie zawiera ani jednego z podanych znaków: strcspn() size_t strcspn(const char *s1, const char *s2) liczbaniecyfrwliczbie = strcspn(napis, +-,. ); Funkcje przydatne do kontroli danych wejściowych 20
21 Operacje na łańcuchach I jeszcze problemy ze scanf() Poprawnie napisany kod powinien działać niezależnie od danych wejściowych Dwukrotnie wywołany scanf( %f,...) tak nie działa (przy błędnych danych): float a,b; printf("podaj dwe liczby rzeczywiste: "); scanf("%f", &a); // podaj 14,5 zamiast 14.5 scanf("%f", &b); //podaj dowolna liczbe printf("pobralem: %f i %f\n", a,b); scanf() jest bardzo uproszczoną funkcją, przeznaczoną tylko do: wczesnych etapów nauki programowania drobnych, własnych testów programisty Nie powinna występować w kodzie prawdziwej aplikacji 21
22 Operacje na łańcuchach Rozbicie łańcucha na elementy Rozwiązanie niektórych problemów ze scanf(): sscanf() sscanf() działa jak scanf(), ale pobiera dane nie z stdin, lecz z łańcucha podanego jako pierwszy argument: char przedsionek[10]; /*co najmniej rozmiar przewidywany na poprawne dane */ fgets(przedsionek, sizeof(przedsionek), stdin); // tu ew. przejrzenie/wyczyszczenie bufora sscanf(przedsionek, %f, &liczbarzeczywista); W ten sposób bufor wejściowy niezależnie od dopasowania do formatu pobieranej liczby zostanie skonsumowany zawsze warto go wyczyścić bo możliwe są też inne błędy Analogicznie można sscanf(przedsionek, %d, &liczbaint); 22
23 Operacje na łańcuchach Konwersje Zamiana łańcucha znaków napis zawierającego liczbę w postaci dziesiętnej na liczbę typu long int do zmiennej dlugiint (wymaga stdlib.h), np: dlugiint=strtol(napis, NULL, 10); Próba zamiany łańcucha znaków napis na liczbę typu float do zmiennej rzeczywista (wymaga stdlib.h), np: rzeczywista=strtof(napis, NULL); Próba zamiany łańcucha znaków napis na liczbę typu double do zmiennej podwojnarzeczywista (stdlib.h),np: podwojnarzeczywista=strtod(napis, NULL); 23
24 Operacje na łańcuchach Konwersje (c.d.) Zamiana liczby (inf, float) na łańcuch znaków: float liczbarzeczywista =12.5; int liczbacalkowita = -4; char napis[100]; sprintf(napis,"%f", liczbarzeczywista); //napis zawiera znaki: sprintf(napis,"%d", liczbacalkowita); //napis zawiera dwa znaki: -4 Połączenie liczby ze stałą tekstową: char napis[100]; int wiek; wiek = 5; sprintf(napis, "Mam %d lat", wiek); //napis zawiera: "Mam 5 lat" Połączenie liczy ze zmiennymi łańcuchowymi: char napis[100]; char marka[]="bmw"; float pojemnosc=5.5; char model[]="turbo"; 24 sprintf(napis, "%s %.1f %s", marka, pojemnosc, model); /*napis zawiera: "BMW 5.5 turbo" */
25 Co trzeba umieć? Rozumieć pojęcie wskaźnika do typu znakowego Manipulować łańcuchami Z użyciem wskaźników do typu znakowego Z użyciem podanych funkcji ze string.h Cięcie, Przeszukiwanie Konwersje Uwaga na ilość i kolejność parametrów funkcji 25
Ć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ółowoint tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania
Rok akademicki 2013/2014, Pracownia nr 10 2/20 Informatyka 1 Tablica elementów ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu Politechnika Białostocka - Wydział Elektryczny Elektrotechnika,
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ółowoŁAŃCUCHY W JĘZYKU C/C++
ŁAŃCUCHY W JĘZYKU C/C++ Stała tekstowa / łańcuchowa jest tablicą znaków zakończoną znakiem o kodzie: 0 np. stała łańcuchowa: Jestem tekstem... 74 101 115 116 101 109 32 116 101 107 115 116 101 109 0......
Bardziej szczegółowoDANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE
DANE TEKSTOWE W JĘZYKU C/C++ - TABLICE ZNAKOWE Stała tekstowa / łańcuchowa jest tablicą znaków zakończoną znakiem o kodzie: 0 np. stała łańcuchowa: Jestem tekstem ASCII... J e s t e m t e k s t e m \0...
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
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ółowoSpis treści JĘZYK C - ŁAŃCUCHY ZNAKÓW. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF22
Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Informatyka 2 Kod przedmiotu: ES1D300 017 (studia stacjonarne)
Bardziej szczegółowoJęzyki programowania. Przetwarzanie tablic znaków. Część druga. Autorzy Tomasz Xięski Roman Simiński
Języki programowania Część druga Przetwarzanie tablic znaków Autorzy Tomasz Xięski Roman Simiński Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w nim
Bardziej szczegółowoWstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy
Bardziej szczegółowoPodstawy programowania 1
Podstawy programowania 1 Krzysztof Grudzień kgrudzi@kis.p.lodz.pl Wykład nr 2 1 Plan spotkań Wskaźniki Tablice jednowymiarowe & wska źniki. Programowanie w C. Wikibooks 2 Co to jest wskaźnik?? Wskaźnik
Bardziej szczegółowoPodstawy programowania
Podstawy programowania Część siódma Przetwarzanie tablic znaków Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze opracowanie zawiera skrót treści wykładu,
Bardziej szczegółowoJęzyki programowania obiektowego Nieobiektowe elementy języka C++
Języki programowania obiektowego Nieobiektowe elementy języka C++ Roman Simiński roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Przetwarzanie tablic znaków Łańcuchy znakowe jako tablice znaków
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ółowoSpis treści JĘZYK C - ŁAŃCUCHY ZNAKÓW. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF10Z
Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Informatyka 1 Kod przedmiotu: EZ1C200 010 (studia niestacjonarne)
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ół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ółowoPodstawy Programowania
Podstawy Programowania dr Elżbieta Gawrońska gawronska@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej dr Elżbieta Gawrońska (ICIS) Podstawy Programowania 05 1 / 15 Plan wykładu 1 Biblioteka
Bardziej szczegółowoPodstawy Programowania
Podstawy Programowania Wykład XI Przetwarzanie napisów, drzewa binarne Robert Muszyński Katedra Cybernetyki i Robotyki, PWr Zagadnienia: reprezentacja napisów znakowych, operowanie na napisach: porównywanie,
Bardziej szczegółowoPodstawy Programowania. Przetwarzanie napisów, drzewa binarne
Podstawy Programowania Wykład XI Przetwarzanie napisów, drzewa binarne Robert Muszyński ZPCiR ICT PWr Zagadnienia: reprezentacja napisów znakowych, operowanie na napisach: porównywanie, kopiowanie, łączenie,
Bardziej szczegółowoProgramowanie Proceduralne
Programowanie Proceduralne Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 7 strlen size_t strlen(char const *s); Oblicza długość napisu wskazywanego przez s Przykładowy
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ół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ółowoPodstawy Programowania. Przetwarzanie napisów, drzewa binarne
Podstawy Programowania Wykład XI Przetwarzanie napisów, drzewa binarne Robert Muszyński ZPCiR ICT PWr Zagadnienia: reprezentacja napisów znakowych, operowanie na napisach: porównywanie, kopiowanie, łączenie,
Bardziej szczegółowoiii. b. Deklaracja zmiennej znakowej poprzez podanie znaku
Języki i paradygmaty programowania 1 studia stacjonarne 2018/19 Lab 5. Stałe i zmienne znakowe. Tablice. Wskaźniki do tablic. Operacje na wskaźnikach. Instrukcja switch, case. Wyrażenie przecinkowe. Funkcje
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ół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ółowoPodstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 9 Łańcuchy znaków 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Tablica znaków w językach C i C++ (oraz pochodnych) łańcuch znaków przechowywany jest jako
Bardziej szczegółowoWprowadzenie do programowania w języku C
Wprowadzenie do programowania w języku C Część piąta Tablice koncepcja, reprezentacja, przetwarzanie Autor Roman Simiński Kontakt siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziewiąta Tablice a zmienne wskaźnikowe Wersja skrócona, tylko C++ Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie
Bardziej szczegółowoStałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można
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ółowoWskaźniki w C. Anna Gogolińska
Wskaźniki w C Anna Gogolińska Zmienne Zmienną w C można traktować jako obszar w pamięci etykietowany nazwą zmiennej i zawierający jej wartość. Przykład: kod graficznie int a; a a = 3; a 3 Wskaźniki Wskaźnik
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ół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ółowoWyklad 7 Funkcje (c.d.). Tablice jednowymiarowe znaków
Wyklad 7 Funkcje (c.d.). Tablice jednowymiarowe znaków Nie wolno definicji funkcji zagniezdzac w ciele innej funkcji! Funkcje bez parametrów musza korzystac ze zmiennych globalnych, jesli zachodzi potrzeba
Bardziej szczegółowoJęzyki i metodyka programowania. Wprowadzenie do języka C
Literatura: Brian W. Kernighan, Dennis M. Ritchie Język Ansi C, Wydawnictwa Naukowo - Techniczne, 2007 http://cm.bell-labs.com/cm/cs/cbook/index.html Scott E. Gimpel, Clovis L. Tondo Język Ansi C. Ćwiczenia
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ółowoSpis treści JĘZYK C - TABLICE JEDNOWYMIAROWE, ŁAŃCUCHY ZNAKÓW. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu
Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Informatyka 1 Kod przedmiotu: ES1C200 009 (studia stacjonarne)
Bardziej szczegółowoTablice wielowymiarowe. Przykład tablica 2-wymiarowa. Przykład. Przykład 3-wymiarowy. Tak naprawdę nie istnieją w C! Rozważmy tablicę o rozmiarze 3x2
Tablice wielowymiarowe Przykład tablica 2-wymiarowa Tak naprawdę nie istnieją w C! Tak naprawdę C i Java dopuszczają tworzenie tablic tablic tablica 2-wymiarowa = tablica (zwykłych) tablic tablica 3-wymiarowa
Bardziej szczegółowoJĘZYK C - TABLICE DWUWYMIAROWE,
Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Informatyka 1 Kod przedmiotu: EZ1C200 010 (studia niestacjonarne)
Bardziej szczegółowoLaboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski
Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski 7 kwietnia 2014 1. Wprowadzenie Pierwsza część instrukcji zawiera informacje
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ółowoProgramowanie I C / C++ laboratorium 03 arytmetyka, operatory
Programowanie I C / C++ laboratorium 03 arytmetyka, operatory Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2013-02-19 Typ znakowy Typ znakowy Typ wyliczeniowy # include
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ół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ółowoWstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji (1) Algorytmy liniowe Algorytmy z rozgałęzieniami
Bardziej szczegółowoPliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego
Pliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego 1 /24 Pisanie pojedynczych znaków z klawiatury do pliku #include void main(void) { FILE *fptr; // wkaznik do pliku, tzw. uchwyt
Bardziej szczegółowoInicjacja tablicy jednowymiarowej
TABLICE C++ Inicjacja tablicy jednowymiarowej typ_komórek_tablicy nazwa_tablicy [ ilość elementów tablicy ] ; np.: int tablica[1000]; czyli tablica, która może przechowywać tysiąc elementów typu całkowitego,
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ółowoWstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy Wykład 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji (1) Algorytmy liniowe Algorytmy z rozgałęzieniami
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ółowoWskaźniki. Informatyka
Materiały Wskaźniki Informatyka Wskaźnik z punktu widzenia programisty jest grupą komórek pamięci (rozmiar wskaźnika zależy od architektury procesora, najczęściej są to dwa lub cztery bajty ), które mogą
Bardziej szczegółowoPodstawy programowania komputerów
Podstawy programowania komputerów Wykład 10: Sterowanie pamięcią w C Pamięć na stosie!każdy program napisany w języku C ma dostęp do dwóch obszarów pamięci - stosu i sterty, w których może być przechowywana
Bardziej szczegółowoPowyższe wyrażenie alokuje 200 lub 400 w zależności od rozmiaru int w danym systemie. Wskaźnik wskazuje na adres pierwszego bajtu pamięci.
1. Tablice dynamiczne Początkowa zadeklarowana wielkość tablicy czasami może okazać niewystarczająca, lub nadmierna. Dynamiczna alokacja pamięci wykorzystywana jest w celu otrzymania bądź zwolnienia pamięci
Bardziej szczegółowoWykład Wskaźniki a tablice jednowymiarowe Arytmetyka wskaźników Dostęp do elementów tablic
Wykład 11 11. Wskaźniki a tablice jednowymiarowe 11.1. Arytmetyka wskaźników 11.2. Dostęp do elementów tablic 11.3. Metody przekazywania tablic do funkcji 11.4. Operacje na tablicach liczbowych 11.5. Operacje
Bardziej szczegółowoWprowadzenie do tablic znaków (łańcuchów) w ANSI C
Wprowadzenie do tablic znaków (łańcuchów) w ANSI C Tablice znaków stanowią specjalny rodzaj tablic o budowie ułatwiającej przetwarzanie tekstów. Przetwarzanie obejmuje szereg operacji takich jak tworzenie,
Bardziej szczegółowoInformatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki
Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu
Bardziej szczegółowoWykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe
Podstawy programowania Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe 1 Podstawy programowania Część I Łańcuchy znaków 2 I. Zmienne łańcuchowe Klasyfikacja zmiennych statycznych
Bardziej szczegółowoWykład 6. Operacje na łańcuchach znakowych
Wykład 6. Operacje na łańcuchach znakowych 1. Łańcuch znaków jako tablica Do przechowania łańcucha znaków służy tablica znakowa. W kolejnych pozycjach tej tablicy są pamiętane kolejne znaki. Ostatnim znakiem
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ółowoWykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++
Podstawy programowania Wykład II Tablice (wstęp) Przykłady algorytmów Wstęp do języka C/C++ 1 dr Artur Bartoszewski - Podstawy programowania, sem. 1- WYKŁAD Część I Wstęp do struktur danych: Tablice 2
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ół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ół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ół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ółowoWstęp do wskaźników w języku ANSI C
Wstęp do wskaźników w języku ANSI C / Materiał dydaktyczny pomocniczy do przedmiotu Informatyka sem.iii kier. Elektrotechnika/ 1. Wprowadzenie W języku ANSI C dla każdego typu X (wbudowanego, pochodnego,
Bardziej szczegółowoReprezentacja symboli w komputerze.
Reprezentacja symboli w komputerze. Znaki alfabetu i łańcuchy znakowe. Programowanie Proceduralne 1 ASCII The American Standard Code for Information Interchange, 1968 r. 7 bitów, liczby z zakresu 0-127
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-18 8. Łańcuchy znaków Łańcuchy
Bardziej szczegółowoTablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1
Tablice i struktury czyli złożone typy danych. Programowanie Proceduralne 1 Tablica przechowuje elementy tego samego typu struktura jednorodna, homogeniczna Elementy identyfikowane liczbami (indeksem).
Bardziej szczegółowoJęzyk C zajęcia nr 11. Funkcje
Język C zajęcia nr 11 Funkcje W języku C idea podprogramów realizowana jest wyłącznie poprzez definiowanie i wywołanie funkcji. Każda funkcja musi być przed wywołaniem zadeklarowana. Deklaracja funkcji
Bardziej szczegółowoPROE wykład 3 klasa string, przeciążanie funkcji, operatory. dr inż. Jacek Naruniec
PROE wykład 3 klasa string, przeciążanie funkcji, operatory dr inż. Jacek Naruniec Przypomnienie z ostatnich wykładów Konstruktory/destruktory i kolejność ich wywołania w złożonej klasie. Referencja Obiekty
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ółowoKURS C/C++ WYKŁAD 6. Wskaźniki
Wskaźniki KURS C/C++ WYKŁAD 6 Każda zmienna ma unikalny adres wskazujący początkowy obszar pamięci zajmowany przez tą zmienną. Ilość pamięci zajmowanej przez zmienną zależy od typu zmiennej. Adres można
Bardziej szczegółowomain( ) main( void ) main( int argc, char argv[ ] ) int MAX ( int liczba_1, liczba_2, liczba_3 ) źle!
Funkcja wysoce niezależny blok definicji i instrukcji programu (podprogram) Każdy program napisany w języku C/C++ zawiera przynajmniej jedną funkcję o predefiniowanej nazwie: main( ). Najczęściej wykorzystuje
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ółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziesiąta Rekordy w C/C++ struktury Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.programowanie.siminskionline.pl Niniejsze opracowanie zawiera skrót
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ółowowykład II uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C - funkcje, tablice i wskaźniki wykład II dr Jarosław Mederski Spis
i cz. 2 Programowanie uzupełnienie notatek: dr Jerzy Białkowski 1 i cz. 2 2 i cz. 2 3 Funkcje i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje instrukcje } i cz. 2 typ nazwa ( lista-parametrów ) { deklaracje
Bardziej szczegółowoWskaźniki. Programowanie Proceduralne 1
Wskaźniki Programowanie Proceduralne 1 Adresy zmiennych Sterta 1 #include 2 3 int a = 2 ; 4 5 int main ( ) 6 { 7 int b = 3 ; 8 9 printf ( " adres zmiennej a %p\n", &a ) ; 10 printf ( " adres
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2011/2012 Pracownia nr 9 (20.01.2012) dr inż. Jarosław Forenc Rok
Bardziej szczegółowo. Podstawy Programowania 1. Łańcuchy znaków. Arkadiusz Chrobot. 25 listopada 2015
.. Podstawy Programowania 1 Łańcuchy znaków Arkadiusz Chrobot Zakład Informatyki 25 listopada 2015 1 / 47 Plan.1 Operacje na pojedynczych znakach.2 Typ danych dla ciągów znaków.3 Inicjacja łańcuchów.4
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ółowoInstytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium
Bardziej szczegółowoWstęp do programowania
wykład 8 Agata Półrola Wydział Matematyki i Informatyki UŁ sem. zimowy 2016/2017 Tablice wielowymiarowe inaczej Efekt tablicy wielowymiarowej można uzyskać definiując tablicę jednowymiarową odpowiedniego
Bardziej szczegółowoLaboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH
Laboratorium Podstaw Informatyki Kierunek Elektrotechnika Ćwiczenie 1 Podstawy Wprowadzenie do programowania w języku C Kraków 2010 Twój pierwszy program w C Program w języku C, jak i w wielu innych językach
Bardziej szczegółowoElementy języka C. ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors.
Wykład 3 ACprogramislikeafastdanceonanewlywaxeddancefloorbypeople carrying razors. Waldi Ravens J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 75 / 146 deklaracje zmiennych instrukcja podstawienia
Bardziej szczegółowoTemat 1: Podstawowe pojęcia: program, kompilacja, kod
Temat 1: Podstawowe pojęcia: program, kompilacja, kod wynikowy. Przykłady najprostszych programów. Definiowanie zmiennych. Typy proste. Operatory: arytmetyczne, przypisania, inkrementacji, dekrementacji,
Bardziej szczegółowoProste typy zmiennych języka C++ *) Zapis 3.4 e-38 jest równoważny zapisowi 3,
WYKŁAD 1. PODSTAWY 1_1. Typy zmiennych Proste typy zmiennych języka C++ Nazwa typu (nazwa skrócona) Rozmiar (bajtów) unsigned char 1 signed char (char) unsigned short int (unsigned) signed short int (int)
Bardziej szczegółowoPodstawy programowania w języku C++
Podstawy programowania w języku C++ Część dziesiąta Rekordy w C/C++ struktury Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,
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ół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ółowoTablice, funkcje, wskaźniki - wprowadzenie
Tablice, funkcje, wskaźniki - wprowadzenie Przemysław Gawroński D-10, p. 234 Wykład 4 19 listopada 2018 (Wykład 4) Tablice, funkcje, wskaźniki - wprowadzenie 19 listopada 2018 1 / 37 Outline 1 Tablice
Bardziej szczegółowoWstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 3. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Dyrektywy preprocesora #include #define Interakcja
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ółowoZasady programowania Dokumentacja
Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika
Bardziej szczegółowo1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość
1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float
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ół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ółowo