Constants


Be sure you understand the difference between a 'constant' and a declaration. A constant has a value that cannot be changed. For example:


	1234
	'x'
	9.89
	"String"   

Constants are used to assign a value to a variable. E.G


    int i;      /* declare a variable called 'i'	*/   
    i = 1234;   /* assign the constant value 1234 to 
                 * the variable 'i'			*/
    i++;        /* Change the value of the variable.	*/


Integer constants.

Integer constants can be expressed in the following ways.


	1234	(decimal)
	0xff	(Hexidecimal)
	0100	(Octal)
	'\xf'	(Hex character)   

Examples of their use are:


	int i=255;	/* i assigned the decimal value of 255	*/   

	i -= 0xff	/* subtract 255 from i			        */

	i += 010	/* Add Octal 10 (decimal 8)		        */

                /* Print 15 - there are easier ways...	*/
	printf ("%i \n", '\xf'); 

Integer constants are assumed to have a datatype of int, if it will not fit into an 'int' the compiler will assume the constant is a long. You may also force the compiler to use 'long' by putting an 'L' on the end of the integer constant.

        1234L           /* Long int constant (4 bytes)          */   
The other modifier is 'U' for Unsigned.
        1234U           /* Unsigned int                         */
and to complete the picture you can specify 'UL'
        1234UL          /* Unsigned long int                    */

Floating point constants.

Floating point constants contain a decimal point or exponent. By default they are double.


	123.4   
	1e-2


Chararacter constants.

Are actually integers.


	'x'
	'\000'
	'\xhh'

	escape sequences   


String constants.

Strings do not have a datatype of their own. They are actually a sequence of char items terminated with a \0. A string can be accessed with a char pointer.

An example of a string would be:


	char *Str = "String Constant";   

See the discussion on strings for more information.


Also see:


Top Master Index Keywords Functions


Martin Leslie 12-July-1999