⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 literalconstant.html

📁 关于 C++ 的历史无须我来介绍了
💻 HTML
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

  
  <link rel="stylesheet" href="css/stdlayout.css" type="text/css">

  
  <link rel="stylesheet" href="css/print.css" type="text/css">

  
  <meta content="text/html; charset=gb2312" http-equiv="content-type">

  
  <title>字面常量</title>
</head>


<body>

<h3><a href="http://caterpillar.onlyfun.net/GossipCN/index.html">From
Gossip@caterpillar</a></h3>

<h1><a href="CppGossip.html">C++ Gossip: 字面常量</a></h1>

<br>

您可以在程式中写下1、1.0、3.14159这样的数值,这类数值称之为“字面常量”(Literal
contstant),预设程式中若写下一个整数值,例如1这个数值的话,预设它会是个int型态无正负号的数值,而如果您在程式中写下1.0,3.14
等小数时,预设它会是double型态的数值,例如下面这个程式所显示出来的大小分别是int与double的大小:<br>

<br>

<pre>#include &lt;iostream&gt; <br>using namespace std; <br><br>int main() { <br>    cout &lt;&lt; "sizeof(1): " &lt;&lt; sizeof(1) &lt;&lt; "\n";<br>    cout &lt;&lt; "sizeof(1.0): " &lt;&lt; sizeof(1.0) &lt;&lt; "\n";<br><br>    return 0; <br>}</pre>

<br>

执行结果:<br>

<table style="text-align: left; width: 100%;" border="0" cellpadding="2" cellspacing="2">

  <tbody>

    <tr>

      <td style="background-color: rgb(0, 0, 0);"><small><span style="color: rgb(255, 255, 255);">sizeof(1): 4<br>

sizeof(1.0): 8</span></small><span style="color: rgb(255, 255, 255);"><br>

      </span></td>

    </tr>

  
  </tbody>
</table>

<br>

整数字面常量可以用8进位、10进位与16进位来表示,一般习惯使用10进位,如果您要使用8进位的字面常量,开头加上0就可以了,如果要使用16进位的
字面常量,开头加上0x,例如下面的程式各显示10进位制26的8进位与16进位写法:<br>

<br>

<pre>#include &lt;iostream&gt; <br>using namespace std; <br><br>int main() { <br>    cout &lt;&lt; 26 &lt;&lt; "\n";   // 10进位<br>    cout &lt;&lt; 032 &lt;&lt; "\n";  // 8进位<br>    cout &lt;&lt; 0x1A &lt;&lt; "\n"; // 16进位<br><br>    return 0; <br>}</pre>

<br>

由于cout输出整数值时,都会以10进位制显示,所以上面的程式中三行陈述都会显示26。<br>

<br>

您可以在整数值之后加上L或l,表示该整数值要是long型态,因为l容易与数字1搞混,所以通常使用L,例如1L,您也可以指定为无号整数,可使用U或
u来指定,例如1U,L与U可以同时指定,例如1UL或1LU;对于浮点数的话,则可以在写下浮点数值时以F或f表示数值要使用float型态,例如
3.14f,也可以使用科学记号,例如20000可以表示为2e4。<br>

<br>

字元字面常量则以单引号来包括一个字元,例如'A'、'1'都表示一个字元字面常量,而有一些字元与C++中所使用的相同,例如"、'、\等,要在程式中
表现这些字元则要使用escape sequence,即\"、\'、\\,其它还有一些“不可见字元”,也要以escape
sequence来表示,下表列出常用的escape sequence:<br>

<br>

<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">

  <tbody>

    <tr>

      <td style="background-color: rgb(204, 204, 204);"><span style="font-weight: bold;">escape sequence</span></td>

      <td style="background-color: rgb(204, 204, 204);"><span style="font-weight: bold;">说明</span></td>

    </tr>

    <tr>

      <td>\n</td>

      <td>换行、新行(newline)</td>

    </tr>

    <tr>

      <td>\t</td>

      <td>水平定位点(horizontal tab)</td>

    </tr>

    <tr>

      <td>\v</td>

      <td>垂直定位点(vertical tab)</td>

    </tr>

    <tr>

      <td>\b</td>

      <td>退回一格(backspace)</td>

    </tr>

    <tr>

      <td>\r</td>

      <td>返回(carriage return)</td>

    </tr>

    <tr>

      <td>\f</td>

      <td>换页(formfeed)</td>

    </tr>

    <tr>

      <td>\a</td>

      <td>哔声(alert bell)</td>

    </tr>

    <tr>

      <td>\\</td>

      <td>倒斜线(backslash)</td>

    </tr>

    <tr>

      <td>\?</td>

      <td>问号</td>

    </tr>

    <tr>

      <td>\'</td>

      <td>单引号</td>

    </tr>

    <tr>

      <td>\"</td>

      <td>双引号</td>

    </tr>

  
  </tbody>
</table>

<br>

您还可以使用escape
sequence自行指定8进位字元编码,指定的格式为\ooo,例如'\12'就是新行字元(ASCII中编码12),'\062'则是字元'2'。<br>

<br>

您可以使用endl这个C++内建的I/O控制器(manipulator),它会输出newline字元,而避免直接使用escape
sequence指定newline字元,例如:<br>

<div style="margin-left: 40px;"><span style="font-weight: bold; font-family: Courier New,Courier,monospace;">cout &lt;&lt; "Hello!
World!" &lt;&lt; endl;</span><br>

</div>

<br>

在C++中如果以""来包括一串文字的话,即为字串字面常数,例如"Hello!
World!"就是字串字面常数,字串字面常数由字元阵列组成,每一个字串最后会以一个null字元结束。<br>

<br>

true与false也是字面常数,对应型态为bool。<br>

<br>

<br>

<br>

</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -