Algorithmen & Datenstrukturen
Programmieren 1


von Prof. Jürgen Plate

C-Tabellen

Die 32 C Schlüsselwörter

auto const double float int short struct unsigned
break continue else for long signed switch void
case default enum goto register sizeof typedef volatile
char do extern if return static union while

Regeln für Vorrang und Assoziativität von Operatoren

Priorität
Bezeichnung
Symbol
Auswertungsrichtung
15
Klammern
Operatoren zur
Komponentenauswahl
( ) [ ]

. ->

von links nach rechts
Unäre Operatoren
14
Cast-Operator
Größenoperator
Adressoperator
Verweisoperator
Negationsoperatoren
arithmetisch
logisch
bitlogisch
Inkrement
Dekrement
(Datentyp)
sizeof
&
*

-
!
~
++
- -

von rechts nach links
inäre und ternäre Operatoren
13
Arithmetische Operatoren
* /%
von links nach rechts
12
 
+ -
von links nach rechts
11
Schiebe-Operatoren
<< >>
von links nach rechts
10
Vergleichsoperatoren
> >= < <= 
von links nach rechts
9
 
= = !=
von links nach rechts
8
Bit-Operatoren
&
von links nach rechts
7
 
^
von links nach rechts
6
 
|
von links nach rechts
5
Logische Operatoren
&&
von links nach rechts
4
 
||
von links nach rechts
3
Bedingungs-Operator
(ternär)
? :
von rechts nach links
2
Zuweisungs-Operatoren
= += -= *= /= %= >>= <<= &= ^= |=
von rechts nach links
1
Sequenz-Operator
von rechts nach links

Escape-Sequenzen

ZeichenEscape-SequenzBedeutung
"\"Anführungszeichen
'\'Apostroph
?\?Fragezeichen
\\\Backslash
BEL\aBell
BS\bBackspace
FF\fFormfeed
NL\nNewline
CR\rCarriage Return
HT\tHorizontal-Tabulator
VT\vVertical-Tabulator

<

Datentypen in C

Datentyp
Kurzform
Größe
möglicher Wert
char
unsigned
signed char
enum
  1 Byte
1 Byte
2 Byte
-128 bis 127

0 bis 255 (ASCII)

-32 768 bis 32 767

int   2 Bytes
4 Bytes
-32 768 bis 32 767

-2 147 483 648 bis

2 147 483 647

unsigned int unsigned 2 Bytes

4 Bytes

0 bis 65 535

0 bis 4 294 967 295

short int short 2 Bytes -32 768 bis 32 767
unsigned short

int

unsigned

short

2 Bytes 0 bis 65 535
long int long 4 Bytes -2 147 483 648 bis

2 147 483 647

unsigned long

int

unsigned

long

4 Bytes 0 bis 4 294 967 295
float   4 Bytes 8.43E-37 bis 3.37E+38
6 Stellen genau
long float double 8 Bytes 1.7E-308 bis 1.67E+308
15 Stellen genau
long double   16 Bytes 3.4E-4932 bis 1.1E+4932
19 Stellen genau

Zusammengesetzte Zuweisungsoperatoren:

+=:x += ausdrx = x + ausdr
-=:x -= ausdrx = x - ausdr
*=:x *= ausdrx = x * ausdr
/=:x /= ausdrx = x / ausdr
%=:x %= ausdrx = x % ausdr
&=:x &= ausdrx = x & ausdr
|=:x |= ausdrx = x | ausdr
^=:x ^= ausdrx = x ^ ausdr
<<=:x <<= ausdrx = x << ausdr
=:x >>= ausdrx = x >> ausdr

Zusammenfasssung Formatangaben von printf

FormatangabeEingabewertTyp
%dganze Dezimalzahlint
%hdganze Dezimalzahlshort
%ldganze Dezimalzahllong
%iganze Zahlint
%uganze Dezimalzahl ohne Vorzeichenint
%huganze Dezimalzahl ohne Vorzeichenshort
%luganze Dezimalzahl ohne Vorzeichenlong
%oganze oktale Zahlint
%hoganze oktale Zahlshort
%loganze oktale Zahllong
%xganze hexadezimale Zahlint
%hxganze hexadezimale Zahlshort
%lxganze hexadezimale Zahllong
%cASCII-Zeichenchar
%fGleitkommazahlfloat
%lfGleitkommazahldouble
%LFGleitkommazahllong double
%e, %EGleitkommazahl-Exponentialschreibweisefloat
%le, %lEGleitkommazahl (exp.)double
%Le, LEGleitkommazahl (exp.)long double
%g, %GGleitkommazahl (exponential o. dezimal)float
%lg, lGGleitkommazahl (exp./dez.)double
%Lg, LGGleitkommazahl (exp./dez.)long double
%sZeichenkette
%pZeiger
%nzeigt eingelesene Zeichen ankeine Eingabe

Speicherklassen

Klasse
Definitionsort
Lebensdauer
zugreifbar (sobald definiert oder deklariert)
Definition
(Ort)
Deklaration
(Prototype)
auto
Blockanfang
nur wenn im Block
im Block
[auto] typ name;
-
register
Blockanfang
nur wenn im Block
im Block
register typ name;
-
static
Blockanfang
gesamtes Programm
im Block
static typ name;
-
static
außerhalb von Funktionen
gesamtes Programm
im gleichen Quelltext
static typ name;
-
extern
außerhalb von Funktionen
gesamtes Programm
im beliebigen Quelltext
typ name;
extern typ name;
static
als Funktion
gesamtes Programm
im gleichen Quelltext
static typ name(...){...}
static typ name(...);
extern
als Funktion
gesamtes Programm
im beliebigen Quelltext
typ name(...){...}
[extern] typ name(...);

ASCII-Tabelle

ASCII Tabelle (sedezimal)

| 00 nul| 01 soh| 02 stx| 03 etx| 04 eot| 05 enq| 06 ack| 07 bel|
| 08 bs | 09 ht | 0a nl | 0b vt | 0c np | 0d cr | 0e so | 0f si |
| 10 dle| 11 dc1| 12 dc2| 13 dc3| 14 dc4| 15 nak| 16 syn| 17 etb|
| 18 can| 19 em | 1a sub| 1b esc| 1c fs | 1d gs | 1e rs | 1f us |
| 20 sp | 21  ! | 22  " | 23  # | 24  $ | 25  % | 26  & | 27  ' |
| 28  ( | 29  ) | 2a  * | 2b  + | 2c  , | 2d  - | 2e  . | 2f  / |
| 30  0 | 31  1 | 32  2 | 33  3 | 34  4 | 35  5 | 36  6 | 37  7 |
| 38  8 | 39  9 | 3a  : | 3b  ; | 3c  < | 3d  = | 3e  > | 3f  ? |
| 40  @ | 41  A | 42  B | 43  C | 44  D | 45  E | 46  F | 47  G |
| 48  H | 49  I | 4a  J | 4b  K | 4c  L | 4d  M | 4e  N | 4f  O |
| 50  P | 51  Q | 52  R | 53  S | 54  T | 55  U | 56  V | 57  W |
| 58  X | 59  Y | 5a  Z | 5b  [ | 5c  \ | 5d  ] | 5e  ^ | 5f  _ |
| 60  ` | 61  a | 62  b | 63  c | 64  d | 65  e | 66  f | 67  g |
| 68  h | 69  i | 6a  j | 6b  k | 6c  l | 6d  m | 6e  n | 6f  o |
| 70  p | 71  q | 72  r | 73  s | 74  t | 75  u | 76  v | 77  w |
| 78  x | 79  y | 7a  z | 7b  { | 7c  | | 7d  } | 7e  ~ | 7f del|

ASCII Tabelle (oktal)

|000 nul|001 soh|002 stx|003 etx|004 eot|005 enq|006 ack|007 bel|
|010 bs |011 ht |012 nl |013 vt |014 np |015 cr |016 so |017 si |
|020 dle|021 dc1|022 dc2|023 dc3|024 dc4|025 nak|026 syn|027 etb|
|030 can|031 em |032 sub|033 esc|034 fs |035 gs |036 rs |037 us |
|040 sp |041  ! |042  " |043  # |044  $ |045  % |046  & |047  ' |
|050  ( |051  ) |052  * |053  + |054  , |055  - |056  . |057  / |
|060  0 |061  1 |062  2 |063  3 |064  4 |065  5 |066  6 |067  7 |
|070  8 |071  9 |072  : |073  ; |074  < |075  = |076  > |077  ? |
|100  @ |101  A |102  B |103  C |104  D |105  E |106  F |107  G |
|110  H |111  I |112  J |113  K |114  L |115  M |116  N |117  O |
|120  P |121  Q |122  R |123  S |124  T |125  U |126  V |127  W |
|130  X |131  Y |132  Z |133  [ |134  \ |135  ] |136  ^ |137  _ |
|140  ` |141  a |142  b |143  c |144  d |145  e |146  f |147  g |
|150  h |151  i |152  j |153  k |154  l |155  m |156  n |157  o |
|160  p |161  q |162  r |163  s |164  t |165  u |166  v |167  w |
|170  x |171  y |172  z |173  { |174  | |175  } |176  ~ |177 del|

Latin1-Tabelle

128 144 160   176 ° 192 À 208 Ð 224 à 240 ð
129 145 ‘ 161 ¡ 177 ± 193 Á 209 Ñ 225 á 241 ñ
130 ‚ 146 ’ 162 ¢ 178 ² 194 Â 210 Ò 226 â 242 ò
131 ƒ 147 “ 163 £ 179 ³ 195 Ã 211 Ó 227 ã 243 ó
132 „ 148 ” 164 ¤ 180 ´ 196 Ä 212 Ô 228 ä 244 ô
133 … 149 • 165 ¥ 181 µ 197 Å 213 Õ 229 å 245 õ
134 † 150 – 166 ¦ 182 ¶ 198 Æ 214 Ö 230 æ 246 ö
135 ‡ 151 — 167 § 183 · 199 Ç 215 × 231 ç 247 ÷
136 ˆ 152 ˜ 168 ¨ 184 ¸ 200 È 216 Ø 232 è 248 ø
137 ‰ 153 ™ 169 © 185 ¹ 201 É 217 Ù 233 é 249 ù
138 Š 154 š 170 ª 186 º 202 Ê 218 Ú 234 ê 250 ú
139 ‹ 155 › 171 « 187 » 203 Ë 219 Û 235 ë 251 û
140 Œ 156 œ 172 ¬ 188 ¼ 204 Ì 220 Ü 236 ì 252 ü
141 157 173 ­ 189 ½ 205 Í 221 Ý 237 í 253 ý
142 158 174 ® 190 ¾ 206 Î 222 Þ 238 î 254 þ
143 159 Ÿ 175 ¯ 191 ¿ 207 Ï 223 ß 239 ï 255 ÿ

Zum Inhaltsverzeichnis Zum nächsten Abschnitt


Copyright © FH München, FB 04, Prof. Jürgen Plate
Letzte Aktualisierung: 23. Nov 2006