Every variable has a data type. typedef is used to define new data type names to make a program more readable to the programmer.
For example:
| main() | main() { | { int money; | typedef int Pounds; money = 2; | Pounds money = 2 } | } |
These examples are EXACTLY the same to the compiler. But the right hand example tells the programmer the type of money he is dealing with.
A common use for typedef is to define a boolean data
type as below.
Note: Recent C++ compilers have introduced a
boolean datatype.
typedef enum {FALSE=0, TRUE} Boolean main () { Boolean flag = TRUE; } |
And as a final example, how about creating a string datatype?
typedef char *String; main() { String Text = "Thunderbird"; printf("%s\n", Text); } |
The main use for typedef seems to be defining structures. For example:
typedef struct {int age; char *name} person; person people; |
Take care to note that person is now a type specifier and NOT a variable name.
As a final note, you can create several data types in one hit.
typedef int Pounds, Shillings, Pennies, Dollars, Cents; |
Here is a rather heavy example of typedef.
I would expect to see 'typedef' in header files.
Top | Master Index | Keywords | Functions |