Programmieren in C Signale, Bitfelder, Unionen Fehler, Debugging, Profiling
|
|
- Kajetan Solberg
- vor 8 Jahren
- Abrufe
Transkript
1 Programmieren in C Signale, Bitfelder, Unionen Fehler, Debugging, Profiling Hochschule Fulda FB AI Wintersemester 2014/15 Peter Klingebiel, HS Fulda, DVZ
2 Signale 1 Signal Systemnachricht an einen Prozess vergleichbar mit einem Interrupt ausgelöst z.b. vom Nutzer... Abbruch (Ctrl-C, SIGINT) Programmstop (SIGKILL)... oder vom System Timer (SIGALRM) Programmende (SIGTERM) #include <signal.h> Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 2
3 Signale 2 einige Signale: SIGINT Unterbrechung (meist Ctrl-C) SIGHUP Programmende SIGKILL Programm beenden SIGALRM Timer abgelaufen Signale können abgefangen werden: void handler(int sig) {... }... signal(sigalrm, handler); Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 3
4 Signale 3 signal.c /* * signal.c * Demo fuer Signale * klin, */ #include <stdio.h> #include <signal.h> unsigned long dumcnt = 0; /* Schle Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 4
5 Signale 4 Timerfunktionen alarm(int nsec) löst nach nsec Sekunden ein Signal SIGALRM aus: void alrmhandler() { printf("sigalrm!\n"); }... signal(sigalrm, alrmhandler); alarm(5);... Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 5
6 Signale 5 alarm.c /* * alarm.c * Demo fuer alarm und SIGALRM * klin, * Unix, Linux, Cygwin, NICHT dev-c * Aufruf: alarm sekunden */ #include <stdio.h> #include <signal.h> #include <time.h> Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 6
7 Signale 6 Feinere Auflösung mit Intervall-Timer #include <sys/time.h> Datentypen struct timeval { time_t tv_sec; /* Sekunden */ suseconds_t tv_usec; /* Microsek. */ }; struct itimerval { struct timeval it_interval; struct timeval it_value; }; Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 7
8 Signale 7 Funktionen setitimer(int w, struct itimerval *v, struct itimerval *ov) getitimer(int w, struct itimerval *v) Werte für w ITIMER_REAL Systemuhr/-zeit ITIMER_VIRTUAL Prozesszeit Beispiel: struct itimerval it; it.it_value.tv_sec = 2; /* 2 Sek. */ it.it_value.tv_usec = 0; /* Start */ it.it_interval.tv_sec = 0; /* 0,5 Sek */ it.it_interval.tv_usec = ; /* Interv. */ setitimer(itimer_real, &it, NULL); Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 8
9 Bitfelder 1 Bitfelder Elemente vom struct-typ Einzelelemente: int oder unsigned int gedacht für hardwarenahe Programmierung Problem: compilerabhängig nicht portabel! Beispiel: typedef struct _iodev { /* Bitfeld */ unsigned int rflag:1; /* 1 Bit: Writeflag */ unsigned int wflag:1; /* 1 Bit: Readflag */ unsigned int d1:2; /* Dummy */ unsigned int type:2; /* 2 Bit: Geraetetyp */ unsigned int d2:2; /* Dummy */ unsigned int data:8; /* 8 Bit: Datenbyte */ } iodev; Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 9
10 Bitfelder 2 Speicherung eines Bitfelds Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 10
11 Bitfelder 3 bitfeld.c /* * bitfeld.c * Demo Bitfelder * klin, * Aufruf: bitfeld [-v] */ #include <stdio.h> #define IO_RD 1 /* Lesegeraet */ #define IO_WD 2 /* Schreibgeraet Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 11
12 Unionen 1 union: spezielle Art von struct anderer Name: varianter Rekord Speichern der Elemente in union nicht nacheinander, sondern übereinander union-elemente teilen sich Speicherplatz sinnvoll bei gleichartigen Objekten, die aber verschiedenen Typs sein können union { /* Union: */ char c; /* char */ short s; /* short */ int i; /* int */ } u; /* teilen sich Platz */ Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 12
13 Unionen 2 Speicherung von struct und union Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 13
14 Unionen 3 union.c /* * union.c * Demo union * klin, */ #include <stdio.h> struct { /* Struct */ char c; short s; Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 14
15 Unionen 4 union oft Element in einem struct Typ des Elements in union muss definiert sein eigenes Typelement im struct Beispiel struct number { /* Struct Zahl */ byte typ; /* Typ union-element */ union { /* Union: */ byte b; /* byte */ short s; /* short */ int i; /* int */ } u; }; Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 15
16 Unionen 5 Zugriff auf union: struct number n;... switch(n.typ) { case BYTE: dobyte(n.u.b); break; case SHORT: doshort(n.u.s); break; case INT: doint(n.u.i); break; } Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 16
17 Unionen 6 Beispiel: mydraw4.c #define LINE 0x01 /* Typ Linie */ #define RECT 0x02 /* Typ Rechteck */ #define CIRCLE 0x04 /* Typ Kreis */... typedef struct _obj { /* Objekt allgemein */ int n; /* Objektnummer */ int f; /* Loeschflag */ int t; /* Typ des Objekts */ union { line l; /* Linie */ rect r; /* Rechteck */ circle c; /* Kreis */ } o; } object; Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 17
18 Unionen 7 mydraw4.c /* * mydraw4.c * Einfaches Zeichenprogramm * Kreise, Linien, Rechtecke, Farbe * Leinwandgroesse: 640 x 480 Pixel * Erzeugt SVG-Format * Version 4 - interaktiv * klin, */ #include <stdio.h> Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 18
19 Syntaxfehler 1 C hat kein sinnvolles error recovery eine sehr schlechte Fehlerbehandlung beim Übersetzen nach Auftreten von Syntaxfehlern der C-Compiler setzt nach einem Fehler nicht neu auf und tut so, als ob es keinen Fehler gegeben hat, sondern produziert eine Anzahl, manchmal eine wahre Fülle von Folgefehlern tatsächliche Fehler oft schwer zu finden Fehlererkennung und korrektur mühsam Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 19
20 Syntaxfehler 2 treten nur ein oder ganz wenige Fehler auf Fehlersuche in oder vor der Zeile, die in der Fehlermeldung angegeben ist treten viele und oft unsinnig erscheinende Fehler auf Fehlersuche im Umfeld vor der Zeile, die in der Fehlermeldung angegeben ist dann erneut kompilieren... oder viel Glück!! Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 20
21 Laufzeitfehler 1 oft ist es mühsam, Syntaxfehler zu finden noch mühsamer Laufzeitfehler finden intuitives Herangehen: zusätzliche Ausgaben in den Programmtext einstreuen ggfs. mit CPP-Direktiven #ifdef DEBUG printf("copy: %p %p\n", s1, s2); #endif übersetzen dann mit gcc DDEBUG file.c Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 21
22 Laufzeitfehler 2 debug1.c /* * debug1.c * klin, */ #include <stdio.h> char *string; void scopy(char *s1, char *s2) { Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 22
23 Laufzeitfehler 3 debug2.c - debug1.c mit CPP-Direktiven /* * debug2.c * klin, / */ #include <stdio.h> #define DEBUG char *string; Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 23
24 Laufzeitfehler 4 das Verfahren ist mühsam und zeitaufwendig Alternative Debugger nutzen Debugger: Werkzeug, unter dessen Kontrolle ein Programm gestartet und während des Programmslaufs untersucht werden kann für gcc (und CodeBlocks) Debugger gdb Kode muss für Debugging instrumentiert werden: gcc g file.c o file dann Debugger aufrufen: gdb file Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 24
25 Laufzeitfehler 5 gdb interaktive Shell mit vielen schönen Features innerhalb CodeBlocks weitgehend durch die grafische Oberfläche angesteuert wichtige Kommandos help help topic run wenn das Programm läuft, alles ok! bei Fehlern??? Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 25
26 Laufzeitfehler 6 Wichtige Mechanismen Breakpoints Unterbrechung an definierten Stellen (z.b. Zeilennummer, Funktion) break file.c:12 break func Watchpoints Unterbrechung bei Änderung des Werts einer Variablen watch varname Anzeigen von Variablenwerten print varname Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 26
27 Laufzeitfehler 7 Breakpoint setzen und starten break func run Unterbrechung bei Breakpoint print varname continue schrittweises Vorgehen step Debugger beenden quit Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 27
28 Profilanalyse oft notwendig: Laufzeitverhalten von Programmen zu überprüfen wo wird die Laufzeit verbraucht? wo ist Optimierung notwendig / möglich? Profilanalyse des Programms Instrumentierung mit -pg bei Neucompilieren gcc -pg prog.c -o prog Starten des Programms gmon.out prog Profilanalyse mit gprof, prog, gmon.out gprof prog Programmieren in C - Peter Klingebiel - HS Fulda - DVZ 28
Einführung in die C-Programmierung
Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).
MehrTutorium Rechnerorganisation
Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrZählen von Objekten einer bestimmten Klasse
Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --
MehrDr. Monika Meiler. Inhalt
Inhalt 11 Dynamische Feldvereinbarung... 11-2 11.1 Dynamische Vereinbarung von Vektoren... 11-3 11.2 Dynamische Vereinbarung von Matrizen... 11-5 11.3 Die Kommandozeile... 11-8 Propädeutikum 11-1/8 11
MehrÜbungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11
Übungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11 Fakultät für Informatik Lehrstuhl 1 Dr. Lars Hildebrand Carla Delgado-Battenfeld Fatih Gedikli Tobias Marschall Benjamin Schowe
MehrDas Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala
Das Typsystem von Scala 1 Eigenschaften Das Typsystem von Scala ist statisch, implizit und sicher 2 Nichts Primitives Alles ist ein Objekt, es gibt keine primitiven Datentypen scala> 42.hashCode() res0:
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrTesten mit JUnit. Motivation
Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen
MehrFakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012
WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 Prof. Dr. Robert Lorenz Musterlösung zur Vorlesung Informatik I, Extrablatt zu komplexen Datenstrukturen Aufgabe 45 **
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)
MehrDatentypen: Enum, Array, Struct, Union
Datentypen: Enum, Array, Struct, Union C-Kurs 2013, 2. Tutorium Freitagsrunde http://wiki.freitagsrunde.org 10. September 2013 This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
MehrEinführung in die Programmierung
Name, Vorname Matrikelnummer Probeklausur zur Vorlesung Einführung in die Programmierung WS 2008/09 Dauer: 2 Stunden Hinweise: Schreiben Sie Ihren Namen und Ihre Matrikelnummer auf dieses Deckblatt und
MehrObjektorientiertes Programmieren mit Suse Linux
Objektorientiertes Programmieren mit Suse Linux Zum Programmieren werden 2 Komponenten benötigt: 1. einen Editor zur Eingabe des Quellcodes 2. einen Compiler, der den Quellcode in die Maschinensprache
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrStarten Sie Eclipse: Hier tragen sie Ihr Arbeitsverzeichnis ein. Zu Hause z.b. c:\workspace.
Starten Sie Eclipse: Abgesehen vom Kommandozeilenfenster, auf welches wir später eingehen, öffnet sich ein Dialog (in der FH vermutlich nicht, überspringen Sie in diesem Fall): Hier tragen sie Ihr Arbeitsverzeichnis
MehrProseminar C-Programmierung. Strukturen. Von Marcel Lebek
Proseminar C-Programmierung Strukturen Von Marcel Lebek Index 1. Was sind Strukturen?...3 2. Padding 5 3. Vor- und Nachteile von Padding..8 4. Padding gering halten 9 5. Anwendungsgebiete von Strukturen.11
Mehr5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu
Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten
MehrVisual Basic Express Debugging
Inhalt Dokument Beschreibung... 1 Projekt vorbereiten... 1 Verknüpfung zu Autocad/ProStructures einstellen... 2 Debugging... 4 Autocad/ProSteel Beispiel... 5 Dokument Beschreibung Debuggen nennt man das
Mehrfungen Debugging Boris Tripolskij
Werkzeuggestützte tzte Softwareprüfungen fungen Debugging Boris Tripolskij Gliederung Motivation für Debugging Aufbau des Debuggers in Eclipse Arten von Debugging Tools Fehlerarten Delta Debugging Vorführung
MehrAGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b
AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität
MehrSoftware-Engineering und Optimierungsanwendungen in der Thermodynamik
Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung
MehrEinführung in die C++ Programmierung für Ingenieure
Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF
MehrUmwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut
Umwandeln und Exportieren von Adobe-Illustrator-Dateien in Illustrator für Artcut Unsere mitgelieferte Fonts & Grafik CD haben wir vom Hersteller des Plotters zur Verfügung gestellt bekommen. Die darauf
MehrÜbung zur Vorlesung Programmieren in C
Übung zur Vorlesung Programmieren in C 6 Pointers Marvin Gülker Ruhruniversität Bochum Wintersemester 2015/2016 Marvin Gülker (Ruhruniversität Bochum) 6 Pointers Wintersemester 2015/2016 1 / 29 Gliederung
MehrDownloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler
Downloadfehler in DEHSt-VPSMail Workaround zum Umgang mit einem Downloadfehler Downloadfehler bremen online services GmbH & Co. KG Seite 2 Inhaltsverzeichnis Vorwort...3 1 Fehlermeldung...4 2 Fehlerbeseitigung...5
MehrGliederung Hardware fuer die Zeitmessung Zeitmanagement auf Uniprozessorsystemen. Timing Measurements. Timo Schneider. 4.
4. Juni 2005 1 2 Timer Interrupts Software Timer System Calls Die Real Time Clock befindet sich zusammen mit CMOS-RAM (Bios) auf einem Chip, zb Motorola 1416818. Wenn der PC ausgeschaltet wird, wird die
MehrProgrammierung in C. Grundlagen. Stefan Kallerhoff
Programmierung in C Grundlagen Stefan Kallerhoff Vorstellungsrunde Name Hobby/Beruf Schon mal was programmiert? Erwartungen an den Kurs Lieblingstier Für zu Hause C-Buch online: http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/
Mehr4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen
4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen Highlights: objektorientierte Sprache Plattformunabhängigkeit bei Hardware und Betriebssystem optimale Einbindung im Internet und Intranet
MehrC-Probeklausur (Informatik 1; Umfang: C, Teil 1; SS07)
C-Probeklausur (Informatik 1; Umfang: C, Teil 1; SS07) 1. Aufgabe 6 Punkte Geben Sie Definitionen an für: float var; 1 a) eine float-variable var: b) einen Zeiger pvar, der float *pvar = &var; 1 auf die
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
MehrAnlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt
Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt AMPEL-Steuerung(en) Die Beschreibung und Programmierung der Ampel (vor allem Ampel_5) können sehr kompliziert
MehrNuetzlicher Kleinkram
Ein paar Hilfestellungen zur Arbeit unter Linux/Unix FB Physik Freie Universität Berlin Computerphysik WS 2007/2008 1 2 3 user@ host :~ > gcc -o programm quelltext. c macht gleich mehrere Dinge auf einmal
MehrAutomatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu)
HMExcel Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) Inhalt 1. Einleitung...1 2. Beispiele...2 2.1. Daten in ein Tabellenblatt schreiben...2
Mehrb) Gegeben sei folgende Enumeration: enum SPRACHE {Deutsch, Englisch, Russisch};
Aufgabe 1: (15 Punkte) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine Multiple-Choice-Antwort
MehrThe ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung
The ToolChain Grafisches Debugging mit der QtCreator Entwicklungsumgebung geschrieben von Gregor Rebel 2014-2015 Hintergrund Neben dem textuellen Debuggen in der Textkonsole bieten moderene Entwicklungsumgebungen
MehrGrundlagen von Python
Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren
MehrNeuer Releasestand Finanzbuchhaltung DAM-EDV E.1.22. Inhaltsverzeichnis. 1. Neuerungen Schnittstelle Telebanking mit IBAN und BIC...
Neuer Releasestand Finanzbuchhaltung DAM-EDV E.1.22 Inhaltsverzeichnis 1. Neuerungen Schnittstelle Telebanking mit IBAN und BIC... 2 1a. Programm 257: Auflösen Vorschlag Telebanking... 2 1b. Programm 254:
MehrModellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {
MehrVersion 0.3. Installation von MinGW und Eclipse CDT
Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.
MehrPropädeutikum. Dipl.-Inf. Frank Güttler
Propädeutikum 2015 Vorbereitungskurs Informatikstudium Erfolgreich Studieren Programmieren (C-Kurs) guettler@informatik.uni-leipzig.de Universität Leipzig Institut für Informatik Technische Informatik
MehrEinführung in wxwidgets & wxdev-c++
Einführung in wxwidgets & wxdev-c++ Vortrag im Rahmen der Vorlesung Computational Physics im Sommersemester 2009 Folie 1/13 Gliederung wxwidgets: Übersicht wxdev-c++: Übersicht Installation wxwidgets Syntax
Mehr25 kann ohne Rest durch 5 geteilt werden! ist wahr
Lehrbrief 2: Lektion 8 - C -Praxis 4-1 - 5.2 Einfache Entscheidungen mit if und die Vergleichsoperatoren Nun tauchen wir immer tiefer in die Geheimnisse von C ein und beschäftigen uns mit einem sehr wichtigen
MehrIngenieurinformatik Diplom-FA (C-Programmierung)
Hochschule München, FK 03 WS 2014/15 Ingenieurinformatik Diplom-FA (C-Programmierung) Zulassung geprüft: (Grundlagenteil) Die Prüfung ist nur dann gültig, wenn Sie die erforderliche Zulassungsvoraussetzung
MehrProgrammieren für Ingenieure Sommer 2015. Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.
Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Ein Rechner Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet. Rechner sind überall Ihr Rechner
MehrZugriff auf die Modul-EEPROMs
MAX-P- und P-Bibliotheken EEPROM-Zugriff 1 Zugriff auf die Modul-EEPROMs Jedes X-Bus-Modul verfügt über ein EEPROM, in dem modulspezifische Daten gespeichert werden. Neben einigen Bereichen, die vom Betriebssystem
MehrDie Programmiersprache C99: Zusammenfassung
Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach
MehrErweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:
VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt
MehrKlausur in Programmieren
Studiengang Sensorik/Sensorsystemtechnik Note / normierte Punkte Klausur in Programmieren Wintersemester 2010/11, 17. Februar 2011 Dauer: 1,5h Hilfsmittel: Keine (Wörterbücher sind auf Nachfrage erlaubt)
MehrKlausur C-Programmierung / 15.02.2014 / Klingebiel / 60 Minuten / 60 Punkte
Klausur C-Programmierung / 15.02.2014 / Klingebiel / 60 Minuten / 60 Punkte Musterlösung 1. Aufgabe (5 Punkte) Im folgenden Programmcode sind einige Fehler enthalten. Finden und markieren Sie mindestens
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Kapitel 6: Induktives Vorgehen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische
MehrPraktikum Ingenieurinformatik. Termin 2. Verzweigungen (if-else), printf und scanf, while-schleife
Praktikum Ingenieurinformatik Termin 2 Verzweigungen (if-else), printf und scanf, while-schleife 1 1. Import/Export von Eclipse-Projekten 2. Verzweigungen (if-else-anweisung) 3. printf und scanf 4. Übungsaufgaben
MehrEinführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition
In den nachfolgenden Schritten finden Sie beschrieben, wie Sie in der Entwicklungsumgebung Microsoft Visual Studio 2010 eine Projektmappe, ein Projekt und einen ersten Quellcode erstellen, diesen kompilieren,
MehrUm das Versenden von Anhängen an emails zu ermöglichen, wurde der Assistent für die Kommunikation leicht überarbeitet und wo nötig verbessert.
Release glit.app Release 1.2.0.2485 Über diesen Release Nebst vielen kleinen Fehlerkorrekturen, wurde hauptsächlich an der Erstellung von Offerten, Bestellungen und Rechnungen als PDF, sowie das direkte
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags Pommes... Praktikum A 230 C 207 (Madeleine) F 112 F 113 (Kevin) E
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrEinführung in. Logische Schaltungen
Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von
MehrElektronischer Kontoauszug
Elektronischer Kontoauszug Mit dem elektronischen Kontoauszug können Sie den papierhaften Auszug, den Sie bisher per Post oder an einem unserer Kontoauszugsdrucker erhalten, vollständig ersetzen. Ihre
Mehrltlasten in der Registrierdatenbank löschen
ltlasten in der Registrierdatenbank löschen In der Registry, deutsch Registrierdatenbank, speichert Windows die gesamte Konfiguration des Rechners und alle Einstellungen. Zusätzlich legen Programme hier
MehrDas erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.
Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen
MehrInstallationsleitfaden kabelsafe backup professional unter MS Windows
Installationsleitfaden kabelsafe backup professional unter MS Windows Installationsanleitung und Schnelleinstieg kabelsafe backup professional (kabelnet-obm) unter MS Windows Als PDF herunterladen Diese
Mehr1. Trennlinie mit hr Eine dünne Trennlinie wie die obige in der Regio-Farbe (gelb) kann man recht einfach erstellen. Dafür reicht der Befehl
Bilder bearbeiten In diesem Artikel geht es um Bilder im Backoffice, Bildformate, Trennlinien, Rahmen, das Ändern von Bildunterschriften, ein Grafik-Programm und einiges mehr in Sachen Grafik. Hierzu diese
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
MehrTeil I Debuggen mit gdb
Teil I Debuggen mit gdb Wer kennt das nicht? $./a.out Segmentation fault Was tun dagegen? printf()s in den Code einfügen? Besser (und professioneller): Einen Debugger verwenden Wer kennt das nicht? $./a.out
MehrAdvoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank
Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank Die Entscheidung Advoware über VPN direkt auf dem lokalen PC / Netzwerk mit Zugriff auf die Datenbank des zentralen Servers am anderen
MehrInformatik Repetitorium SS 2009. Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692
Informatik Repetitorium SS 2009 Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692 Operatoren und Datentypen Beispiel: Anweisungen Variable int a float b int c a= a % (int) (++b-1/4) Vorher 36 3.5 c=b
MehrFunktionserweiterungen, behobene Funktionseinschränkungen und Funktionseinschränkungen, L- force EASY Starter V1.1.1 SP1
Funktionserweiterungen, behobene Funktionseinschränkungen und Funktionseinschränkungen, L- force EASY Starter V1.1.1 SP1 Inhaltsverzeichnis 1 Funktionserweiterungen... 2 1.1. Produktidentifikation... 2
MehrGSD-Radionik iradionics Android-App
Neue Daten erfassen Daten speichern Daten löschen Suchen nach bereits erfassten ST = Stammdaten zum Erfassen der Daten. Vorname und Nachname sind Pflichtfelder, alles andere ist optional. Bei Tieren erfassen
MehrKontakte Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering.
Kontakte Kontakte Seite 1 Kontakte Seite 2 Inhaltsverzeichnis 1. ALLGEMEINE INFORMATIONEN ZU DEN KONTAKTEN 4 2. WICHTIGE INFORMATIONEN ZUR BEDIENUNG VON CUMULUS 4 3. STAMMDATEN FÜR DIE KONTAKTE 4 4. ARBEITEN
MehrWie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann.
Wie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann. Einleitung Es kommt vor, dass im Handel Disketten angeboten werden, die Styles und Registrationen
MehrHilfe zu XR PACS ImageproWeb. Inhalt. Windows Updates. IE11 und Windows 7/8
Hilfe zu XR PACS ImageproWeb Inhalt Hilfe zu XR PACS ImageproWeb... 1 Windows Updates... 1 IE11 und Windows 7/8... 1 IE 11 und XRPCSImagePro mit ActiveX... 2 XR PACS ImagePro Web installieren... 3 XRPACSImagePro
MehrUpdate / Inbetriebnahme domovea Server. Update/Inbetriebnahme domovea Server Technische Änderungen vorbehalten
Update / Inbetriebnahme domovea Server 1 Vor der Inbetriebnahme Es muss sicher gestellt sein, dass Microsoft.Net Framework 4.0 installiert ist (bei Windows 7 bereits integriert). Achten Sie auf die richtige
MehrRundung und Casting von Zahlen
W E R K S T A T T Rundung und Casting von Zahlen Intrexx 7.0 1. Einleitung In diesem Werkstattbeitrag erfahren Sie, wie Zahlenwerte speziell in Velocity, aber auch in Groovy, gerundet werden können. Für
MehrGEONET Anleitung für Web-Autoren
GEONET Anleitung für Web-Autoren Alfred Wassermann Universität Bayreuth Alfred.Wassermann@uni-bayreuth.de 5. Mai 1999 Inhaltsverzeichnis 1 Technische Voraussetzungen 1 2 JAVA-Programme in HTML-Seiten verwenden
MehrMelde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei
Seite 1 Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei Seite 2 1 Inhalt Melde- und Veröffentlichungsplattform Portal... 1 (MVP Portal)... 1 Hochladen einer XML-Datei...
MehrBackup-Server einrichten
Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version.0 Voraussetzungen für diesen Workshop. Die M-Quest Suite 2005-M oder höher ist auf diesem Rechner installiert 2. Das Produkt M-Lock ist
MehrGraphic Coding. Klausur. 9. Februar 2007. Kurs A
Graphic Coding Klausur 9. Februar 2007 Kurs A Name: Matrikelnummer: Hinweise - Es sind keine Hilfsmaterialien erlaubt. (Keine Bücher, Taschenrechner, Handys) - Sie haben zwei Stunden Zeit. - Insgesamt
MehrGliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions
try-catch Schlüsselworte try-catch e Schlüsselwort Schlüsselwort selbst erstellte ermöglichen die Behandlung von Fehlern, die zur Laufzeit entstehen. try-catch in C: Fehler führt immer zum Abbruch des
MehrElektronischer Kontoauszug
Elektronischer Kontoauszug Mit dem elektronischen Kontoauszug können Sie den papierhaften Auszug, den Sie bisher per Post oder an einem unserer Kontoauszugsdrucker erhalten, vollständig ersetzen. Ihre
MehrFelder, Rückblick Mehrdimensionale Felder. Programmieren in C
Übersicht Felder, Rückblick Mehrdimensionale Felder Rückblick Vereinbarung von Feldern: typ name [anzahl]; typ name = {e1, e2, e3,..., en} Die Adressierung von Feldelementen beginnt bei 0 Die korrekte
MehrReinigen der Druckköpfe
Wenn es zu Streifenbildung kommt oder Probleme mit der Druckqualität auftreten, prüfen Sie zunächst, ob die Druckköpfe richtig im Druckwagen positioniert sind. 1 3 Drücken Sie Menü>, bis Druckkopf aust.
MehrCOMET - Speed Seite 1
COMET - Speed Seite 1 Version: D-98-02-12 Seite 1 COMET - Speed Seite 2 COMET Speed Der Comet mit dem Programm Speed ist ein sehr universelles Geschwindigkeitsmeßgerät. Die vom Comet gemessene Geschwindigkeit
MehrHochschule Ravensburg-Weingarten Schriftliche Prüfung Programmieren Prof. Dr. M. Zeller
Hochschule Ravensburg-Weingarten Schriftliche Prüfung Programmieren Prof. Dr. M. Zeller Datum, Zeit, 08:00 09:30 Uhr (90 min) Aufgabenblätter 14 Seiten (einschl. Deckblatt) erreichbare Punktzahl 54 zugelassene
MehrWenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt
1. Für alle, die mit wenig zufrieden sind Wenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt Bild 1 bekommt man erst mal einen Schreck. Die Meldung wurden nicht gesichert beunruhigt,
MehrKlausur Programmieren in C Sommersemester 2007 Dipl. Biol. Franz Schenk 13. April 2007, 11.15-13.00 Uhr Bearbeitungszeit: 105 Minuten
Klausur Programmieren in C Sommersemester 2007 Dipl. Biol. Franz Schenk 13. April 2007, 11.15-13.00 Uhr Bearbeitungszeit: 105 Minuten Vorname: Nachname: Matrikelnummer: Legen Sie zu Beginn Ihren Studentenausweis
MehrComputeria Solothurn
Computeria Solothurn Seniorinnen und Senioren entdecken den Computer und das Internet Sich mit «TeamViewer» von einem Supporter helfen lassen Diese Anleitung und die Illustrationen wurden unter Mac OS
MehrMulti-Threading. Ralf Abramowitsch Vector Informatik GmbH abramowitsch@lehre.dhbw-stuttgart.de
Multi-Threading Ralf Abramowitsch Vector Informatik GmbH abramowitsch@lehre.dhbw-stuttgart.de Einführung in Threads Threads synchronisieren ThreadPools Thread = unabhängiger Ausführungspfad, der gleichzeitig
MehrHochschule München, FK 03 FA SS 2012. Ingenieurinformatik
Hochschule München, FK 03 FA SS 2012 Ingenieurinformatik Zulassung geprüft vom Aufgabensteller: Teil 1/Aufgabe 1: 30 Minuten ohne Unterlagen, Teil 2/Aufgaben 2-4: 60 Minuten, beliebige eigene Unterlagen
MehrAnton Ochsenkühn. amac BUCH VERLAG. Ecxel 2016. für Mac. amac-buch Verlag
Anton Ochsenkühn amac BUCH VERLAG Ecxel 2016 für Mac amac-buch Verlag 2 Word-Dokumentenkatalog! Zudem können unterhalb von Neu noch Zuletzt verwendet eingeblendet werden. Damit hat der Anwender einen sehr
MehrModerne C-Programmierung
Xpert.press Moderne C-Programmierung Kompendium und Referenz Bearbeitet von Helmut Schellong 1. Auflage 2005. Buch. xii, 280 S. ISBN 978 3 540 23785 3 Format (B x L): 15,5 x 23,5 cm Weitere Fachgebiete
Mehr2. Semester, 2. Prüfung, Lösung
2. Semester, 2. Prüfung, Lösung Name Die gesamte Prüfung bezieht sich auf die Programmierung in C++! Prüfungsdauer: 90 Minuten Mit Kugelschreiber oder Tinte schreiben Lösungen können direkt auf die Aufgabenblätter
MehrDST EINFÜHRUNG IN MRT (V2)
DST EINFÜHRUNG IN MRT (V2) Aufgabe: Reaktionstester 1. Pflichtenheft Taster an -PA0 8 LEDs an PCx LCD-Anzeige für Ergebnis Die LEDs an Port C sollten unerwartet irgendwann angehen! Jetzt wird die Zeit
MehrDie aktuelle Entwicklung des GeoService-Portals. Analyse- und Auswertefunktionen
Die aktuelle Entwicklung des GeoService-Portals Analyse- und Auswertefunktionen Referent Herr Karl-Heinz Gerl RDE Regionale Dienstleistung Energie Folie 1 2004 RDE Objektmengenlehre Nachbarn Info Auswertung
Mehr2. Negative Dualzahlen darstellen
2.1 Subtraktion von Dualzahlen 2.1.1 Direkte Subtraktion (Tafelrechnung) siehe ARCOR T0IF Nachteil dieser Methode: Diese Form der Subtraktion kann nur sehr schwer von einer Elektronik (CPU) durchgeführt
MehrGebundene Typparameter
Gebundene Typparameter interface StringHashable { String hashcode(); class StringHashMap { public void put (Key k, Value v) { String hash = k.hashcode();...... Objektorientierte
MehrUmzug der abfallwirtschaftlichen Nummern /Kündigung
Umzug der abfallwirtschaftlichen Nummern /Kündigung Um sich bei ebegleitschein abzumelden/ zu kündigen sind folgende Schritte notwendig: Schritt 1: Sie erteilen bifa Umweltinstitut GmbH den Auftrag, Ihre
MehrWas meinen die Leute eigentlich mit: Grexit?
Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?
MehrABB i-bus KNX. Software-Information. Melde- und Bedientableau. Typ: MT 701.2
Produkt: Melde- und Bedientableau Typ: MT 701.2 Aktuelles Anwendungsprogramm Plug-In für ETS 2 MT_701_2_ETS2_SOW_xx_V1-12a_de_en.exe Plug-In für ETS 3 MT_701_2_ETS3_SOW_xx_V1-12a_de_en.exe EIBTAB: MT_701_2_EIBTAB_SOW_de_V2-08-00A_EibTab+Firmware.EXE
MehrEvident VDDS-Anbindung von MIZ
Evident VDDS-Anbindung von MIZ Die VDDS Schnittstelle erlaubt die Übernahme der Patientendaten aus Evident in MIZ. Außerdem können Sie aus Evident heraus (aus der Patientenkarteikarte) MIZ oder den MIZViewer
Mehr