Also, if you want to initialize integers in other radix than decimal, you can use prefixes. Characters can be as well declared using the octal, decimal and hexadecimal.
Here are some examples:
/*----------------------------------------------- Integer constants -----------------------------------------------*/ //A signed integer has no suffix #define CI_1 (3); //An unsigned integer has the u or U suffix #define CUI_1 (3U); //A long integer has the l or L suffix #define CLI_1 (3L); //A long integer has the ul or UL suffix #define CLUI_1 (3UL); /*----------------------------------------------- Real constants -----------------------------------------------*/ //A float has the f suffix #define CF_1 (3.0F); //A double has no suffix #define CD_1 (3.0); //A long double has l or L suffix #define CLD_1 (3.0L); /*Suffixes can also be added when you operate with the scientific notation*/ #define CF_2 (10e-1F); #define CLD_2 (10e-1L); /*----------------------------------------------- Radix-based integer constants -----------------------------------------------*/ //An octal-radix integer requires the 0 prefix #define CIO_1 (037); //A hexadecimal-radix requires the 0x prefix #define CIH_1 (0x37); /*The unsigned and long suffixes can be also applied to octal and hexadecimal*/ #define CUIO_1 (037U) #define CLIO_1 (0x37U) /*----------------------------------------------- Character constants -----------------------------------------------*/ //Declaring a character constant #define CC_1 ('a') //Defining the character constant using its ASCII code in octal #define CC_2 ('\141') //Defining the character constant using its ASCII code in hexadecimal #define CC_3 ('\x61') //Defining the character constant using its ASCII code in decimal #define CC_4 (97) /*----------------------------------------------- String constants -----------------------------------------------*/ //Declaring a string constant #define CS_1 ("Constant string") //You can initialize it using multiple smaller strings #define CS_2 ("Constant " "string") //You can also initialize it using multiple rows #define CS_3 ("Constant \ string")There is also a set of predefined character constants, in chapter 6 from the Formatted Strings article.
Question: Do you use constant/rvalue literals in your code?
References:
No comments:
Post a Comment
Got a question regarding something in the article? Leave me a comment and I will get back at you as soon as I can!