Algorithmen und Datenstrukturen

| ### 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

`

Zeichen | Escape-Sequenz | Bedeutung
--- | --- | ---
" | \" | Anführungszeichen
' | \' | Apostroph
? | \? | Fragezeichen
\ | \\ | Backslash
BEL | \a | Bell
BS | \b | Backspace
FF | \f | Formfeed
NL | \n | Newline
CR | \r | Carriage Return
HT | \t | Horizontal-Tabulator
VT | \v | Vertical-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 += ausdr | x = x + ausdr
-=: | x -= ausdr | x = x - ausdr
*=: | x *= ausdr | x = x * ausdr
/=: | x /= ausdr | x = x / ausdr
%=: | x %= ausdr | x = x % ausdr
&=: | x &= ausdr | x = x & ausdr
|=: | x |= ausdr | x = x | ausdr
^=: | x ^= ausdr | x = x ^ ausdr
<<=: | x <<= ausdr | x = x << ausdr
=: | x >>= ausdr | x = x >> ausdr

## Zusammenfasssung Formatangaben von printf

Formatangabe | Eingabewert | Typ
--- | --- | ---
%d | ganze Dezimalzahl | int
%hd | ganze Dezimalzahl | short
%ld | ganze Dezimalzahl | long
%i | ganze Zahl | int
%u | ganze Dezimalzahl ohne Vorzeichen | int
%hu | ganze Dezimalzahl ohne Vorzeichen | short
%lu | ganze Dezimalzahl ohne Vorzeichen | long
%o | ganze oktale Zahl | int
%ho | ganze oktale Zahl | short
%lo | ganze oktale Zahl | long
%x | ganze hexadezimale Zahl | int
%hx | ganze hexadezimale Zahl | short
%lx | ganze hexadezimale Zahl | long
%c | ASCII-Zeichen | char
%f | Gleitkommazahl | float
%lf | Gleitkommazahl | double
%LF | Gleitkommazahl | long double
%e, %E | Gleitkommazahl-Exponentialschreibweise | float
%le, %lE | Gleitkommazahl (exp.) | double
%Le, LE | Gleitkommazahl (exp.) | long double
%g, %G | Gleitkommazahl (exponential o. dezimal) | float
%lg, lG | Gleitkommazahl (exp./dez.) | double
%Lg, LG | Gleitkommazahl (exp./dez.) | long double
%s | Zeichenkette
%p | Zeiger
%n | zeigt eingelesene Zeichen an | keine 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