C++/CLI Language Basics
A value directly written into the source code of a computer program (as opposed to an identifier like a variable or constant). Literals cannot be changed. Common types of literals include string literals, floating point literals, integer literals, and hexidemal literals. Literal strings are usually either quoted (" ) or use an apostrophe (' ) which is often referred to as a single quote. Sometimes quotes are inaccurately referred to as double quotes.
Languages Focus In addition to understanding whether to use a quote or apostrophe for string literals, you also want to know how to specify and work with other types of literals including floating point literals. Some compilers allow leading and trailing decimals (.1 + .1) , while some require a leading or trailing 0 as in (0.1 + 0.1) . Also, because floating point literals are difficult for compilers to represent accurately, you need to understand how the compiler handles them and how to use rounding and trimming commands correctly for the nature of the project your are coding.
C++/CLI:
qoute
Same as standard C++. String literals are quoted as in "Prestwood". If you need to embed a quote use a slash in front of the quote as in \" .
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both .1 and 0.1 ). Trailing decimals are also allowed (1 , 1. , and 1.0 are all equivalent and allowed).
Syntax Example:
MessageBox::Show("Hello"); MessageBox::Show("Hello \"Mike\"."); //Does ASP evaluate this simple //floating point math correctly? No! if ((.1 + .1 + .1) == 0.3) { MessageBox::Show("Correct"); } else { MessageBox::Show("Not correct"); }
Cross Reference Examples:
Access VBA:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use two quotes in a row.
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both .1 and 0.1 ). Trailing decimals are optimized out and replaced with # if only integer values are used.
Syntax Example:
MsgBox ("Hello") MsgBox ("Hello ""Mike"".") 'Does Access VBA evaluate this simple 'floating point math correctly? No! If (.1 + .1 + .1) = 0.3 Then MsgBox "Correct" Else MsgBox "Not correct" End If
ASP Classic:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use two quotes in a row.
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both .1 and 0.1 ). Trailing decimals are also allowed (1 , 1. , and 1.0 are all equivalent and allowed).
Syntax Example:
Response.Write "Hello" Response.Write "Hello ""Mike""." 'Does ASP evaluate this simple 'floating point math correctly? No! If (.1 + .1 + .1) = .3 Then Response.Write "Correct" Else Response.Write "Not correct" End If
C#:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use a slash in front of the quote as in \" .
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding decimals are allowed (both .1 and 0.1 ). Trailing decimals are not allowed.
Syntax Example:
Console.WriteLine("Hello"); Console.WriteLine("Hello \"Mike\"."); //Does C# evaluate this simple //floating point math correctly? No! if ((0.1 + 0.1 + 0.1) == 0.3) { MessageBox.Show("Correct"); } else { MessageBox.Show("Not correct"); }
C++:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use a slash in front of the quote as in \" .
Syntax Example:
printf("Hello\n"); printf("Hello \"Mike\".\n"); cout << "Hello" << endl; cout << "Hello \"Mike\".\n";
Corel Paradox:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use a slash in front of the quote as in \" .
In ObjectPAL, string literals are limited to 255 characters but there's nothing preventing you from using multiple string literals together as in:
msgInfo("", "You can " + " add literals together in ObjectPAL")
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both .1 and 0.1 ). Trailing decimals are also allowed (1 , 1. , and 1.0 are all equivalent and allowed).
Syntax Example:
msgInfo("", "Hello") msgInfo("", "Hello \"Mike\".") ;Does ObjectPAL evaluate this simple ;floating point math correctly? No! If (.1 + .1 + .1) = .3 Then msgInfo("", "Correct") Else msgInfo("", "Not correct") EndIf
Delphi:
apostrophe
String literals are single quoted (the apostrophe) as in 'Prestwood'. If you need to embed an apostrophe use two apostrophes in a row.
Floating point literals must start with an integer. For example, to specify a fractional floating point literal between 1 and -1, you preceed the decimal with a 0 ; otherwise, you will get a compiler error.
//x := .1 + .1; //Does not work. x := 0.1 + 0.1; //Does work.
Syntax Example:
ShowMessage('Hello'); ShowMessage('Hello Mike''s website.');
Delphi Prism:
quote or apostrophe
In Prism, you use either quotes or apostrophes for string literals.
Different than Delphi, you can start floating point literals with a decimal or an integer. For example, to specify a fractional floating point literal between 1 and -1, you can preceed the decimal with a 0 or not.
x := .1 + .1; //Does work. x := 0.1 + 0.1; //Does work.
Syntax Example:
MessageBox.Show('Hello'); MessageBox.Show("Hello"); //Example of embedding quotes and apostropes: MessageBox.Show('He said, "Who''s computer?"'); MessageBox.Show("She said, ""Mike's computer"".");
Java:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use a slash in front of the quote as in \" .
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both 1. and 1.0 work as well as .1 and 0.1 ). In general, Java follows the IEEE 754 Binary Floating-Point Arithmetic standard.
Syntax Example:
System.out.println("Hello"); System.out.println("Hello \"Mike\"."); //Does Java evaluate this simple //floating point math correctly? No! if ((.1 + .1 + .1) == 0.3) { System.out.println("Correct"); } else { System.out.println("Not correct"); }
JavaScript:
quote or apostrophe
String literals use either an apostrophe (also known as a single quote) as in 'Prestwood' or quoted as in "Prestwood". If you need to embed an apostrophe in an apostrophe-literal or a quote in a quoted-literal, precede it with a slash as in \' and \" .
Syntax Example: Alert("Hello"); Alert("Hello \"Mike\".") Alert('Hello'); Alert('Hello Mike\'s website.') //Does JavaScript evaluate this simple //floating point math correctly? No! if ((.1 + .1 + .1) == .3) { document.write("Correct") } else { document.write("Not correct") }
Perl:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use a slash in front of the quote as in \" .
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both .1 and 0.1 ). Trailing decimals are also allowed (1 , 1. , and 1.0 are all equivalent and allowed).
Syntax Example: print "Hello"; print "Hello \"Mike\"."; #Does Perl evaluate this simple #floating point math correctly? No! if ((.1 + .1 + .1) == .3) { print("Correct"); } else { print("Not correct"); }
PHP:
quote or apostrophe
In PHP you can use quotes, or apostrophes as in "Prestwood", and 'Prestwood' for string literals. Use a slash in front of a quote or apostrophe to embed same type as in \' and \" .
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both .1 and 0.1 ). Trailing decimals are also allowed (1 , 1. , and 1.0 are all equivalent and allowed).
Syntax Example: echo "Mike's drums are over there.<br>"; echo 'Mike said, "hi!"<br>'; //Does PHP evaluate this simple //floating point math correctly? No! If ((.1 + .1 + .1) == .3) { Echo "Correct"; } Else { Echo "Not correct"; }
VB Classic:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use two quotes in a row.
To specify a floating point literal between 1 and -1, you can preceed the decimal with a 0 or not (both work). In other words, preceding and following decimals are allowed (both .1 and 0.1 ). Trailing decimals are optimized out and replaced with # if only integer values are used.
Syntax Example:
MsgBox ("Hello") MsgBox ("Hello ""Mike"".") 'Does VB evaluate this simple 'floating point math correctly? No! If (.1 + .1 + .1) = 0.3 Then MsgBox "Correct" Else MsgBox "Not correct" End If
VB.Net:
quote
String literals are quoted as in "Prestwood". If you need to embed a quote use two quotes in a row.
To specify a floating point literal between 1 and -1, preceed the decimal with a 0. If you don't, the compiler will auto-correct your code and place a leading 0 . It will change .1 to 0.1 automatically. Trailing decimals are not allowed.
Syntax Example:
Console.WriteLine("Hello") Console.WriteLine("Hello ""Mike"".") 'Does VB.Net evaluate this simple 'floating point math correctly? No! If (.1 + .1 + .1) = 0.3 Then MsgBox "Correct" Else MsgBox "Not correct" End If