Category:C: Difference between revisions
Content added Content deleted
Puppydrum64 (talk | contribs) m (→Assignment) |
Puppydrum64 (talk | contribs) No edit summary |
||
Line 115: | Line 115: | ||
* Before a variable can be used, it must be defined. |
* Before a variable can be used, it must be defined. |
||
===Types=== |
|||
C has the following types built in by default, but you can create your own based on these using the <code>typedef</code> directive. |
|||
* char: an 8 bit value, typically used to represent ASCII characters. |
|||
* short: a 16 bit value. |
|||
* int: a 32 bit value. |
|||
You can also add a few modifiers in front of the variable type to be more specific: |
|||
* <code>unsigned</code> tells the compiler that this variable is always treated as positive. Computers use two's complement to represent negative numbers, meaning that if the leftmost bit of a number's binary equivalent is set, the value is considered negative. The resulting assembly code will use unsigned comparisons to check this variable against other variables. |
|||
* <code>volatile</code> tells the compiler that this variable's value can changed by the hardware. This is commonly used for hardware registers such as those that track the mouse cursor's location, a scanline counter, etc. The value will always be read from its original memory location, ensuring that its value is always up-to-date. |
|||
Examples: |
|||
<lang C>unsigned int x; |
|||
volatile int HorizontalScroll;</lang> |
|||
Functions work the same way. You can declare a function without defining what it does. |
Functions work the same way. You can declare a function without defining what it does. |