Język C - podstawowe informacje

Podobne dokumenty
METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce.

Programowanie strukturalne i obiektowe

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Język ludzki kod maszynowy

/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h>

PROGRAMOWANIE w C prolog

2 Przygotował: mgr inż. Maciej Lasota

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Podstawy programowania skrót z wykładów:

Część 4 życie programu

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

wykład I uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Wstęp do języka C wykład I dr Jarosław Mederski Spis Ogólne informacje

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Funkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów

Zmienne, stałe i operatory

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Co nie powinno być umieszczane w plikach nagłówkowych:

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta Strona 1 z 26. Powrót. Full Screen. Zamknij.

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wykład. Materiały bazują częściowo na slajdach Marata Dukhana

Programowanie strukturalne język C - wprowadzenie

Języki programowania C i C++ Wykład: Typy zmiennych c.d. Operatory Funkcje. dr Artur Bartoszewski - Języki C i C++, sem.

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak

Podstawy Programowania Podstawowa składnia języka C++

Wstęp do programowania 1

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Na ekranie monitora zostaną wyświetlone w dwu liniach teksty Pierwsza linia Druga linia

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

Wykład 1

Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Język C zajęcia nr 11. Funkcje

( wykł. dr Marek Piasecki )

Podstawy Informatyki. Kompilacja. Historia. Metalurgia, I rok. Kompilatory C++ Pierwszy program. Dyrektywy preprocesora. Darmowe:

Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C

Podstawy Informatyki. Metalurgia, I rok. Wykład 6 Krótki kurs C++

I - Microsoft Visual Studio C++

Podstawy programowania w języku C

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

Podstawy programowania C. dr. Krystyna Łapin

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Mikrokontroler ATmega32. Język symboliczny

ROZDZIAŁ 2. Operatory

Instrukcje sterujące. Programowanie Proceduralne 1

Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory

Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Zajęcia nr 1 Podstawy programowania. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

Słowa kluczowe i nazwy

Programowanie komputerowe. Zajęcia 1

Podstawy programowania - 1

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

Programowanie Obiektowe i C++

Języki i metody programowania. Omówienie języków C, C++ i Java

Podstawy programowania. Wykład Co jeszcze... Przypomnienia, uzupełnienia. Krzysztof Banaś Podstawy programowania 1

Języki i metodyka programowania. Wprowadzenie do języka C

Microsoft IT Academy kurs programowania

Operatory. Operatory bitowe i uzupełnienie informacji o pozostałych operatorach. Programowanie Proceduralne 1

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 5 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 41

Programowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Podstawy Programowania.

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Podstawy programowania. Wykład 3 Konstrukcje sterujące. Krzysztof Banaś Podstawy programowania 1

Języki programowania - podstawy

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Podstawy programowania (1)

Podstawy i języki programowania

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Operatory cd. Relacyjne: ==!= < > <= >= bool b; int i =10, j =20; dzielenie całkowitych wynik jest całkowity! Łączenie tekstu: + string s = "Ala ma ";

Programowanie Proceduralne

Podstawy Programowania. Wykład 1

Laboratorium Podstaw Informatyki. Kierunek Elektrotechnika. Ćwiczenie 1. Podstawy. Wprowadzenie do programowania w języku C. Katedra Metrologii AGH

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji?

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Algorytmika i Programowanie VBA 1 - podstawy

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

Program w C. wer. 10 z drobnymi modyfikacjami! Wojciech Myszka :28:

Programowanie obiektowe

Programowanie - wykład 4

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Podstawy Programowania C++

C++ wprowadzanie zmiennych

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Proste algorytmy w języku C

Operacje wykonywane są na operandach (argumentach operatorów). Przy operacji dodawania: argumentami operatora dodawania + są dwa operandy 2 i 5.

1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998.

Wstęp do programowania

Funkcja (podprogram) void

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Pytania sprawdzające wiedzę z programowania C++

Transkrypt:

Język C - podstawowe informacje Michał Rad AGH Laboratorium Maszyn Elektrycznych 2014-12-05

Outline Program w języku C Funkcje Składnia Instrukcje sterujace Na koniec...

Po kolei napisać program (zwykły plik tekstowy, dowolny edytor) uruchomić kompilator kompilator stara się zrozumieć co programista miał na mysli i stworzyć z tego ciag instrukacji dla danego procesora czyli plik binarny. najczęściej kompilator wyświetla informacje gdzie popełnilismy bład cykl sie powtarza (no chyba że nie ma błędu wtedy powstaje program) jeżeli powstał program to jest on zapisany w postaci pliku (w windows.exe) i można go uruchomić i wtedy widać błędy których nie mógł wykryć kompilator ;)

Struktura programu Struktura i sposób pisania programu w języku C jest dość dowolny, ale warto (właściwie jest to konieczne) zachować pewien porzadek. Najpierw załaczane biblioteki Definicje (#define) Funkcje (ich definicje lub deklaracje) Program główny czyli funkcja main()

Preprocesor Preprocesor w programowaniu to program komputerowy, którego zadaniem jest przetworzenie kodu źródłowego, w sposób określony przez programistę za pomoca dyrektyw preprocesora, na kod wyjściowy tak przetworzony kod źródłowy poddawany jest następnie analizie składniowej i kompilacji. Preprocesor jest najczęściej zintegrowany z kompilatorem języka programowania.

Dyrektywy preprocesora #include dyrektywa właczaj aca tekst innego pliku źródłowego w miejscu jej wystapienia w pliku podlegajacym aktualnie przetwarzaniu, przy czym możliwe jest zagłębione występowanie dyrektywy include, #define definiuje stałe i makroinstrukcje (pseudofunkcje)

Dyrektywy preprocesora cd.. #undef // usuwa definicje stalej lub makra #if // dyrektywy kompilacji warunkowej #elif // dziala podobnie jak else if w jezyku C #endif // oznacza koniec bloku kompilacji warunkowej #ifdef // znaczy to samo co #if defined() #ifndef// znaczy to samo co #if!defined()

Załaczane biblioteki Aby korzystać z uprzednio napisanych funkcji do programu zwykle załacza się biblioteki. W załaczanych bibliotekach moga znajdować się również zdefiniowane stałe. #include <stdio.h> #include <math.h> #include "moja.h" // biblioteki // standardowe // biblioteka napisana samodzielnie Nawiasy < > oznaczaja, że dołaczana biblioteka znajduje się w ścieżkach domyślnych, natomiast cudzysłów oznacza, że plik biblioteki znajduje się w tym samym katalogu co plik programu.

Definicje Za pomoca definicji można wprowadzić stała, albo zapisać prosta funkcję: #define NAZWA_STALEJ WARTOSC #define PI 3.1415 #define SUMA(a,b) ((a)+(b))

Funkcje W C funkcja to wydzielona część programu, która przetwarza argumenty i ewentualnie zwraca wartość, która następnie może być wykorzystana jako argument w innych działaniach lub funkcjach. Funkcja może posiadać własne zmienne lokalne. Definicja funkcji ma postać: typ_zwracanej_wartosci nazwa_funkcji(typ_zmiennej nazwa_zmien) { //cialo funkcji }

Funkcje cd.. Na przykład: float suma(float a,float b) { return (a+b); } Wywołanie takiej funkcji w programie głównym wyglada np tak: S=suma(12,33);

Funkcje cd.. Funkcja może nie zwracać żadnej wartości, np: void wypisz(char *a) { printf("%s",a); } Wywołanie w ten sposób wyświetli tekst A kuku! wypisz("a kuku!");

Funkcje cd.. Funkcja może też w szczególności nie pobierać żadnej wartości, np: void autor(void) { printf("autorem jest JAN Kowalski!"); } Wywołanie wtedy ma postać: autor(); Tak więc jak widać niezależnie od tego czy funkcja potrzebuje parametrów wywołania czy nie - należy użyć nawiasów.

Funkcje - deklaracja funkcji typ_zwracany nazwa_funkcji(typ_parametru); // np.: float suma(float,float);

Program główny Program główny to także funkcja. Funkcja o nazwie main(). Jej parametrami moga być parametry podane przy wywołaniu programu ale często nie ma żadnych. Definicje funkcji nie moga być zagłębiane więc w programie głównym nie można już definiować innych funkcji.

Składnia języka C Składnia języka programowania określa: jak opisywać struktury sterujace jak opisywać struktury danych jak tworzyć poprawne ciagi symboli dla nazywania zmiennych i struktur danych jak stosować interpunkcję (np. spacje, średniki, kropki, nawiasy) W języku C: Duże i małe litery s a rozróżniane. Linijki i rozkazy kończy się średnikiem. Semantyka określa znaczenie poprawnych składniowo wyrażeń.

Słowa kluczowe if else for do while switch continue break case int char double long unsigned signed float short void volatile static const return union struct enum register restrict extern sizeof _Bool _Complex _Imaginary default inline typedef auto goto

Operatory arytmetyczne: operator znaczenie + dodawanie - odejmowanie * mnożenie / dzielenie % dzielenie modulo - daje w wyniku sama resztę z dzielenia = operator przypisania - wykonuje działanie po prawej stronie i wynik przypisuje obiektowi po lewej

Operatory logiczne Operator Rodzaj porównania == czy równe > większy >= większy badź równy < mniejszy <= mniejszy badź równy!= czy różny(nierówny) lub(or) && i,oraz(and)

Operatory binarne ( 00000111 AND 00000010 = 00000010) operator funkcja przykład suma bitowa(or) 5 2 da w wyniku 7 ( 00000101 OR 00000010 = 00000111) & iloczyn bitowy 7 & 2 da w wyniku 2 negacja bitowa 2 da w wyniku 253 ( NOT 00000010 = 11111101)» przesunięcie bitów 7» 2 da w wyniku 1 o X w prawo ( 00000111» 2 = 00000001) «przesunięcie bitów 7 «2 da w wyniku 28 o X w lewo ( 00000111 «2 = 00011100) wyłaczna ( 00000111 ˆ 00000010 = 00000101

Operatory inkrementacji/dekrementacji Operacja Opis operacji Wartość wyrażenia x++ zwiększy wartość w x o jeden wartość zmiennej x przed zmiana ++x zwiększy wartość w x o jeden wartość zmiennej x powiększona o jeden x- - zmniejszy wartość w x o jeden wartość zmiennej x przed zmiana - -x zmniejszy wartość w x o jeden wartość zmiennej x pomniejszona o jeden

Wyrażenia Każde wyrażenie ma wartość liczbowa. int a=5; a==4; a++; a+=4; a; float b = 7 / 2; float b = 7.0 / 2; float b = (float)7 / 2;

Instrukcja warunkowa Na czym polega instrukcja warunkowa? Jest to sprawdzanie wartości wyrażenia sterujacego i w zależności od jego wartosci wykonanie odpowiedniego bloku programu. Składnia:

Instrukcja warunkowa - błędy Częste błędy... if(a=5) {...}; if(a==5); {... }; if(a) //poprawne ale nie czytelne {..};

Pętla Jak zajać programistę? - Przeczytaj zdanie poniżej. - Przeczytaj zdanie powyżej. Pętla służy do powtarzania wykonania pewnego bloku programu, najczęściej ze zmieniajacymi się parametrami. W języku C istnieja trzy rodzaje pętli: for, while oraz do while.

Pętla for for(wyrazenie1;warunek;wyrazenie2 ) //np: for(i=1;i<10;i++) { //... } Przed pierwszym sprawdzeniem warunku pętli wykonane zostanie wyrażenie1, następnie sprawdzony zostanie warunek. Dopóki warunek będzie miał niezerowa wartość, wykonywane będzie ciało pętli oraz po każdym obiegu wyrażenie2.

Pętla while while(warunek) { //... } //np: i=1; while(i<10) { i++; }

Pętla do while do { //... }while(warunek) //np: i=1; do { i++; }while(i<10);

Zasięg zmiennych Zmienne globalne deklarowane przed wszystkimi funkcjami - sa dostępne w całym programie. Zmienne lokalne deklarowane i definiowane w konkretnych blokach (funkcjach) programu sa dostępne tylko w obrębie tych bloków. Zmienna lokalna i globalna o tej samej nazwie nie jest w programie błędem ale ze względu na czytelność należy tego unikać.

Skad czerpać informacje Np.: http://www.cplusplus.com/reference http://pl.wikipedia.org/wiki/c_(język_programowania) http://pl.wikibooks.org/wiki/c

Pojęcia do zapamiętania: z języka C: instrukcja warunkowa, pętle: for, while, do while. Funkcja, definicja funkcji, deklaracja funkcji. Semantyka, syntaktyka (składnia)