Copyright (c) Hyperion Entertainment and contributors.
Difference between revisions of "AmiWest Lesson 2"
Jump to navigation
Jump to search
Steven Solie (talk | contribs) |
Steven Solie (talk | contribs) |
||
Line 59: | Line 59: | ||
== Static versus Dynamic Linking == |
== Static versus Dynamic Linking == |
||
+ | |||
+ | Here is hello world done with static linking: |
||
+ | |||
+ | <syntaxhighlight> |
||
+ | #include <stdio.h> |
||
+ | |||
+ | int main() |
||
+ | { |
||
+ | printf("Hello, world\n"); |
||
+ | return 0; |
||
+ | } |
||
+ | </syntaxhighlight> |
||
+ | |||
+ | gcc -mcrt=clib2 -o hello hello.c |
||
== Libraries and Interfaces == |
== Libraries and Interfaces == |
Revision as of 04:07, 11 October 2012
Contents
AmiWest Lesson 2: Fundamentals
Basic Types
It is important to under at least the basic types when programming. The following table summarizes the basic types used in AmigaOS as compared to standard C and C++ types:
Type | Deprecated Type(s) | C | C++ |
---|---|---|---|
uint64 | none | uint64_t | uint64_t |
int64 | none | int64_t | int64_t |
uint32 | ULONG or LONGBITS or CPTR | uint32_t | uint32_t |
int32 | LONG | int32_t | int32_t |
uint16 | UWORD or WORDBITS or USHORT or UCOUNT or RPTR | uint16_t | uint16_t |
int16 | WORD or SHORT or COUNT | int16_t | int16_t |
uint8 | UBYTE or BYTEBITS | char or unsigned char | unsigned char |
int8 | BYTE | signed char | signed char |
STRPTR | none | char* | char* |
CONST STRPTR | n/a | char* const x | char* const x |
CONST_STRPTR | n/a | const char* | const char* |
CONST CONST_STRPTR | n/a | const char* const | const char* const |
APTR | none | void* | void* |
CONST APTR | none | void* const x | void* const x |
CONST_APTR | none | const void* | const void* |
CONST CONST_APTR | none | const void* const | const void* const |
float32 | FLOAT | float | float |
float64 | DOUBLE | double | double |
BOOL | none | int16 | int16 |
TEXT | none | char | char |
NULL | none | 0L | (void*)0L |
BPTR | none | int32_t | int32_t |
BSTR | none | int32_t | int32_t |
ZERO | none | (BPTR)0 | (BPTR)0 |
Static versus Dynamic Linking
Here is hello world done with static linking:
#include <stdio.h> int main() { printf("Hello, world\n"); return 0; }
gcc -mcrt=clib2 -o hello hello.c
Libraries and Interfaces
Tasks and Processes
Code to display Tasks and Processes.