Difference between revisions of "Pascal for C users/de"
From Lazarus wiki
Jump to navigationJump to searchm |
m |
||
Line 2: | Line 2: | ||
<br> | <br> | ||
<br> | <br> | ||
+ | =Übersetzen von C Operatoren= | ||
+ | ==Arithmetische Operatoren== | ||
{| class="wikitable" | {| class="wikitable" | ||
− | ! C !! Pascal !! | + | ! C !! Pascal !! Kommentare |
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | | | + | | + |
− | | | + | | + |
− | | | + | | Addition |
|- | |- | ||
− | | | + | | - |
− | | | + | | - |
− | | | + | | Subtraktion |
|- | |- | ||
− | | | + | | * |
− | | | + | | * |
− | | | + | | Multiplikation |
|- | |- | ||
| / | | / | ||
| / | | / | ||
− | | | + | | Gleitkommadivision |
|- | |- | ||
| % | | % | ||
| Mod | | Mod | ||
− | | Modulo Division | + | | Modulo (Division ohne Rest) |
+ | |- | ||
+ | | ++ | ||
+ | | Inc | ||
+ | | inkrementieren (Hochzählen) | ||
+ | |- | ||
+ | | -- | ||
+ | | Dec | ||
+ | | dekrementieren (Herunterzählen) | ||
+ | |} | ||
+ | ==Relationale Operatoren== | ||
+ | {| class="wikitable" | ||
+ | ! C !! Pascal !! | ||
|- | |- | ||
− | | | + | | == |
− | | | + | | = |
− | | | + | | gleich |
|- | |- | ||
| != | | != | ||
| <> | | <> | ||
| ungleich | | ungleich | ||
+ | |- | ||
+ | | < | ||
+ | | < | ||
+ | | kleiner | ||
+ | |- | ||
+ | | <= | ||
+ | | <= | ||
+ | | kleiner gleich | ||
+ | |- | ||
+ | | > | ||
+ | | > | ||
+ | | grösser | ||
+ | |- | ||
+ | | >= | ||
+ | | >= | ||
+ | | grösser gleich | ||
+ | |} | ||
+ | ==Logische Operatoren== | ||
+ | {| class="wikitable" | ||
+ | ! C !! Pascal !! Kommentare | ||
+ | |- | ||
+ | | ! | ||
+ | | Not | ||
+ | | Nichten (Den Wahrheitswert in sein Gegenteil ändern) | ||
|- | |- | ||
| && | | && | ||
| And | | And | ||
− | | logisches UND | + | | logisches UND mit Kurzschlussauswertung<br> |
+ | In Free Pascal ist dies die Standard Compilereinstellung | ||
|- | |- | ||
| <nowiki> || </nowiki> | | <nowiki> || </nowiki> | ||
| Or | | Or | ||
− | | logisches ODER | + | | logisches ODER mit Kurzschlussauswertung |
+ | In Free Pascal ist dies die Standard Compilereinstellung | ||
+ | |- | ||
+ | | & | ||
+ | | And | ||
+ | | logisches UND mit Komplettauswertung<br> | ||
+ | In Free Pascal ist dies die Compiler Direktive {$B ON} | ||
+ | |- | ||
+ | | <nowiki> | </nowiki> | ||
+ | | Or | ||
+ | | logisches ODER mit Komplettauswertung | ||
+ | In Free Pascal ist dies die Compiler Direktive {$B ON} | ||
+ | |- | ||
+ | | ^ | ||
+ | | Xor | ||
+ | | exclusives ODER | ||
+ | |} | ||
+ | ==Bit Operatoren== | ||
+ | {| class="wikitable" | ||
+ | ! C!! Pascal !! Kommentare | ||
+ | |- | ||
+ | | ~ | ||
+ | | Not | ||
+ | | Einerkomplement | ||
+ | |- | ||
+ | | & | ||
+ | | And | ||
+ | | bitweises UND | ||
+ | |- | ||
+ | | <nowiki> | </nowiki> | ||
+ | | Or | ||
+ | | bitweises inclusives ODER | ||
|- | |- | ||
| ^ | | ^ | ||
| Xor | | Xor | ||
− | | | + | | bitweises exclusives ODER |
|- | |- | ||
| >> | | >> | ||
| Shr | | Shr | ||
− | | | + | | bitweises Rechtsschieben mit Vorzeichen |
|- | |- | ||
| << | | << | ||
| Shl | | Shl | ||
− | | | + | | bitweises Linksschieben |
+ | |} | ||
+ | ==Zuweisungs Operatoren== | ||
+ | {| class="wikitable" | ||
+ | ! C !! Pascal !! | ||
+ | |- | ||
+ | | = | ||
+ | | := | ||
+ | | Zuweisung | ||
+ | |} | ||
+ | =Übersetzen von C Anweisungsblöcken= | ||
+ | {| class="wikitable" | ||
+ | ! Java !! Pascal !! Kommentare | ||
|- | |- | ||
− | | | + | | { |
− | | | + | | Begin |
− | | | + | | Anfang eines Anweisungsblocks |
|- | |- | ||
− | | | + | | } |
− | | | + | | End |
− | | | + | | Ende / Abschluss eines Anweisungsblocks |
+ | |} | ||
+ | =Übersetzen von C Kommentarzeichen= | ||
+ | {| class="wikitable" | ||
+ | ! C !! Pascal !! Kommentare | ||
|- | |- | ||
| /* | | /* | ||
− | | { | + | | { |
| Anfang eines Kommentars | | Anfang eines Kommentars | ||
+ | |- | ||
+ | | /* | ||
+ | | (* | ||
+ | | Anfang eines Kommentars | ||
+ | |- | ||
+ | | */ | ||
+ | | } | ||
+ | | Ende eines Kommentars | ||
|- | |- | ||
| */ | | */ | ||
− | | | + | | *) |
| Ende eines Kommentars | | Ende eines Kommentars | ||
|- | |- | ||
| // | | // | ||
| // | | // | ||
− | | | + | | Kommentarzeile |
+ | |} | ||
+ | =Übersetzen von C Schleifentypen= | ||
+ | {| class="wikitable" | ||
+ | ! C !! Pascal !! Kommentare | ||
|- | |- | ||
− | | | + | | for( ...; ...; ...++) |
− | | | + | | For ... To ... Do |
− | | | + | | Kopfgesteuerte Schleife, die Hochgezählt wird |
|- | |- | ||
− | | | + | | for(...; ...; ...--) |
− | + | | For ... Downto ... Do | |
− | + | | Kopfgesteuerte Schleife, die Heruntergezählt wird | |
− | |||
− | |||
− | | | ||
− | | | ||
|- | |- | ||
− | | while | + | | while (...) |
| While ... Do | | While ... Do | ||
− | | Kopfgesteuerte Schleife | + | | Kopfgesteuerte Schleife |
|- | |- | ||
− | | do while | + | | do ... while(...) |
| Repeat ... Until | | Repeat ... Until | ||
− | | Fussgesteuerte Schleife | + | | Fussgesteuerte Schleife |
|- | |- | ||
− | | do while ! | + | | do ... while!(...) |
| Repeat ... Until ... Not | | Repeat ... Until ... Not | ||
− | | Fussgesteuerte Schleife mit Nichtung des Ausdrucks | + | | Fussgesteuerte Schleife mit Nichtung des Ergebnisses des Ausdrucks |
+ | |} | ||
+ | =Übersetzen von C Verzweigungen / Bedingungen= | ||
+ | {| class="wikitable" | ||
+ | ! C !! Pascal !! Kommentare | ||
|- | |- | ||
− | | | + | | if(...) |
− | | | + | | If ... Then |
− | | | + | | If-Bedingung |
|- | |- | ||
− | | | + | | if(...) ... else |
− | | | + | | If ... Then ... Else |
− | | | + | | If-Bedingung mit Sonstzweig |
|- | |- | ||
− | | switch case break | + | | switch(...) case ...: ...break |
− | | Case ... Of ... End | + | | Case ... Of ...: ... End |
− | | Case-Bedingung | + | | Case-Bedingung |
|- | |- | ||
− | | switch case break default | + | | switch(...) case ...: ... break default |
− | | Case ... Of ... Else ... End | + | | Case ... Of ...: ... Else ... End |
| Case-Bedingung mit Sonst-Zweig | | Case-Bedingung mit Sonst-Zweig | ||
+ | |} | ||
+ | =Übersetzen von C Verzweigungen- / Schleifenabbrüchen= | ||
+ | {| class="wikitable" | ||
+ | ! C !! Pascal !! Kommentare | ||
+ | |- | ||
+ | | break | ||
+ | | Break | ||
+ | | Die break-Anweisung ermöglicht es, vorzeitig eine Schleife (oder ein switch-case-Konstrukt) zu verlassen | ||
|- | |- | ||
+ | | continue | ||
+ | | Continue | ||
+ | | Die continue-Anweisung ermöglicht es, den aktuellen Schleifendurchlauf zu beenden | ||
|} | |} | ||
− | + | =Übersetzen von C Datentypen= | |
− | |||
{| class="wikitable" | {| class="wikitable" | ||
! C type !! Pascal type !! Size (bits) !! Range | ! C type !! Pascal type !! Size (bits) !! Range | ||
Line 192: | Line 296: | ||
| 64-bit | | 64-bit | ||
| 5.0E-324 .. 1.7E+308 | | 5.0E-324 .. 1.7E+308 | ||
− | |||
|} | |} | ||
− | + | =Übersetzen von C Strukturen= | |
− | |||
{| class="wikitable" | {| class="wikitable" | ||
! C type !! Pascal !! | ! C type !! Pascal !! | ||
Line 206: | Line 308: | ||
| Record Case Of | | Record Case Of | ||
| Variant Record | | Variant Record | ||
− | |||
|} | |} | ||
− | + | =Übersetzen von Sonstigem= | |
− | |||
{| class="wikitable" | {| class="wikitable" | ||
! C !! Pascal !! Unit | ! C !! Pascal !! Unit | ||
Line 250: | Line 350: | ||
|- | |- | ||
| cos | | cos | ||
− | | Cos | + | | Cos |
| System | | System | ||
|- | |- | ||
Line 292: | Line 392: | ||
| UpCase | | UpCase | ||
| System | | System | ||
− | |||
|} | |} | ||
<br> | <br> |
Revision as of 08:07, 13 May 2013
│
Deutsch (de) │
English (en) │
français (fr) │
Übersetzen von C Operatoren
Arithmetische Operatoren
C | Pascal | Kommentare |
---|---|---|
+ | + | Addition |
- | - | Subtraktion |
* | * | Multiplikation |
/ | / | Gleitkommadivision |
% | Mod | Modulo (Division ohne Rest) |
++ | Inc | inkrementieren (Hochzählen) |
-- | Dec | dekrementieren (Herunterzählen) |
Relationale Operatoren
C | Pascal | |
---|---|---|
== | = | gleich |
!= | <> | ungleich |
< | < | kleiner |
<= | <= | kleiner gleich |
> | > | grösser |
>= | >= | grösser gleich |
Logische Operatoren
C | Pascal | Kommentare |
---|---|---|
! | Not | Nichten (Den Wahrheitswert in sein Gegenteil ändern) |
&& | And | logisches UND mit Kurzschlussauswertung In Free Pascal ist dies die Standard Compilereinstellung |
|| | Or | logisches ODER mit Kurzschlussauswertung
In Free Pascal ist dies die Standard Compilereinstellung |
& | And | logisches UND mit Komplettauswertung In Free Pascal ist dies die Compiler Direktive {$B ON} |
| | Or | logisches ODER mit Komplettauswertung
In Free Pascal ist dies die Compiler Direktive {$B ON} |
^ | Xor | exclusives ODER |
Bit Operatoren
C | Pascal | Kommentare |
---|---|---|
~ | Not | Einerkomplement |
& | And | bitweises UND |
| | Or | bitweises inclusives ODER |
^ | Xor | bitweises exclusives ODER |
>> | Shr | bitweises Rechtsschieben mit Vorzeichen |
<< | Shl | bitweises Linksschieben |
Zuweisungs Operatoren
C | Pascal | |
---|---|---|
= | := | Zuweisung |
Übersetzen von C Anweisungsblöcken
Java | Pascal | Kommentare |
---|---|---|
{ | Begin | Anfang eines Anweisungsblocks |
} | End | Ende / Abschluss eines Anweisungsblocks |
Übersetzen von C Kommentarzeichen
C | Pascal | Kommentare |
---|---|---|
/* | { | Anfang eines Kommentars |
/* | (* | Anfang eines Kommentars |
*/ | } | Ende eines Kommentars |
*/ | *) | Ende eines Kommentars |
// | // | Kommentarzeile |
Übersetzen von C Schleifentypen
C | Pascal | Kommentare |
---|---|---|
for( ...; ...; ...++) | For ... To ... Do | Kopfgesteuerte Schleife, die Hochgezählt wird |
for(...; ...; ...--) | For ... Downto ... Do | Kopfgesteuerte Schleife, die Heruntergezählt wird |
while (...) | While ... Do | Kopfgesteuerte Schleife |
do ... while(...) | Repeat ... Until | Fussgesteuerte Schleife |
do ... while!(...) | Repeat ... Until ... Not | Fussgesteuerte Schleife mit Nichtung des Ergebnisses des Ausdrucks |
Übersetzen von C Verzweigungen / Bedingungen
C | Pascal | Kommentare |
---|---|---|
if(...) | If ... Then | If-Bedingung |
if(...) ... else | If ... Then ... Else | If-Bedingung mit Sonstzweig |
switch(...) case ...: ...break | Case ... Of ...: ... End | Case-Bedingung |
switch(...) case ...: ... break default | Case ... Of ...: ... Else ... End | Case-Bedingung mit Sonst-Zweig |
Übersetzen von C Verzweigungen- / Schleifenabbrüchen
C | Pascal | Kommentare |
---|---|---|
break | Break | Die break-Anweisung ermöglicht es, vorzeitig eine Schleife (oder ein switch-case-Konstrukt) zu verlassen |
continue | Continue | Die continue-Anweisung ermöglicht es, den aktuellen Schleifendurchlauf zu beenden |
Übersetzen von C Datentypen
C type | Pascal type | Size (bits) | Range |
---|---|---|---|
char | Char | 8-bit | Ein einzelnes Zeichen |
signed char | Shortint | 8-bit | -128 .. 127 |
unsigned char | Byte | 8-bit | 0 .. 255 |
char* | PChar | 32-bit | Zeiger auf ein Chararray |
char16_t | WideChar | 16-bit | Verwendet für die Darstellung eines Zeichens zwei Zeichen Speicher (UTF16) |
char32_t | WideChar | 32-bit | Verwendet für die Darstellung eines Zeichens vier Zeichen Speicher (UTF32) |
short int | SmallInt | 16-bit | -32768 .. 32767 |
unsigned short int | Word | 16-bit | 0 .. 65535 |
int | Integer | 16-bit oder 32-bit | -32.768 .. 32.767 bzw. -2147483648 .. 2147483647 |
unsigned int | Cardinal | 16-bit oder 32-bit | 0 .. 65.535 bzw. 0 .. 4294967295 |
long int | LongInt | 32-bit | -2147483648 .. 2147483647 |
unsigned long int | LongWord | 32-bit | 0 .. 4294967295 |
float | Single | 32-bit | 1.5E-45 .. 3.4E+38 |
double | Double | 64-bit | 5.0E-324 .. 1.7E+308 |
Übersetzen von C Strukturen
C type | Pascal | |
---|---|---|
struct { } | Record End | Strukturierter Datentyp |
union { } | Record Case Of | Variant Record |
Übersetzen von Sonstigem
C | Pascal | Unit |
---|---|---|
abs | Abs | System |
acos | ArcCos | Math |
asin | ArcSin | Math |
atan | ArcTan | System |
atof | StrToFloat | SysUtils |
atoi | StrToInt | SysUtils |
atol | StrToInt | SysUtils |
atoll | StrToInt64 | SysUtils |
ceil | Ceil | Math |
cos | Cos | System |
exp | Exp | System |
floor | Floor | Math |
pow | Power | Math |
round | Round | System |
sin | Sin | System |
sqrt | Sqrt | System |
strcpy | Copy | System |
strlen | Length | System |
tan | Tan | Math |
toupper | UpCase | System |
--Olaf 15:29, 9 May 2013 (UTC)