最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解C++編程中標(biāo)記語句與復(fù)合語句的寫法

 更新時間:2016年01月15日 16:36:51   投稿:goldensun  
這篇文章主要介紹了C++編程中標(biāo)記語句與復(fù)合語句的寫法,是C++入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下

標(biāo)記語句
標(biāo)簽用于將程序控制權(quán)直接轉(zhuǎn)交給特定語句。

identifier : statement
case constant-expression : statement
default : statement

標(biāo)簽的范圍為整個函數(shù),已在其中聲明該標(biāo)簽。
備注
有三種標(biāo)記語句。它們?nèi)际褂妹疤枌⒛撤N標(biāo)簽與語句隔開。case 和 default 標(biāo)簽特定于 case 語句。
#include <iostream> 
using namespace std; 
void test_label(int x) {

  if (x == 1){
    goto label1;
  }
  goto label2;

label1:
  cout << "in label1" << endl;
  return;

label2:
  cout << "in label2" << endl;
  return;
}

int main() {
  test_label(1); // in label1 
  test_label(2); // in label2
}

goto 語句
源程序中 identifier 標(biāo)簽的外觀聲明了一個標(biāo)簽。僅 goto 語句可將控制轉(zhuǎn)移到 identifier 標(biāo)簽。以下代碼片段闡釋了 goto 語句和 identifier 標(biāo)簽的使用:
標(biāo)簽無法獨(dú)立出現(xiàn),必須總是附加到語句。如果標(biāo)簽需要獨(dú)立出現(xiàn),則必須在標(biāo)簽后放置一個 null 語句。
標(biāo)簽具有函數(shù)范圍,并且不能在函數(shù)中重新聲明。但是,相同的名稱可用作不同函數(shù)中的標(biāo)簽。

// labels_with_goto.cpp
// compile with: /EHsc
#include <iostream>
int main() {
  using namespace std;
  goto Test2;

  cout << "testing" << endl;

  Test2:
   cerr << "At Test2 label." << endl;
}

//Output: At Test2 label.

case 語句
在 case 關(guān)鍵字后顯示的標(biāo)簽不能在 switch 語句的外部顯示。(此限制也適用于 default 關(guān)鍵字。) 下面的代碼片段演示了 case 標(biāo)簽的正確用法:

// Sample Microsoft Windows message processing loop.
switch( msg )
{
  case WM_TIMER:  // Process timer event.
   SetClassWord( hWnd, GCW_HICON, ahIcon[nIcon++] );
   ShowWindow( hWnd, SW_SHOWNA );
   nIcon %= 14;
   Yield();
   break;

  case WM_PAINT:
   memset( &ps, 0x00, sizeof(PAINTSTRUCT) );
   hDC = BeginPaint( hWnd, &ps ); 
   EndPaint( hWnd, &ps );
   break;

  default:
   // This choice is taken for all messages not specifically
   // covered by a case statement.

   return DefWindowProc( hWnd, Message, wParam, lParam );
   break;
}

case 語句中的標(biāo)簽
在 case 關(guān)鍵字后顯示的標(biāo)簽不能在 switch 語句的外部顯示。(此限制也適用于 default 關(guān)鍵字。) 下面的代碼片段演示了 case 標(biāo)簽的正確用法:

// Sample Microsoft Windows message processing loop.
switch( msg )
{
  case WM_TIMER:  // Process timer event.
   SetClassWord( hWnd, GCW_HICON, ahIcon[nIcon++] );
   ShowWindow( hWnd, SW_SHOWNA );
   nIcon %= 14;
   Yield();
   break;

  case WM_PAINT:
   // Obtain a handle to the device context.
   // BeginPaint will send WM_ERASEBKGND if appropriate.

   memset( &ps, 0x00, sizeof(PAINTSTRUCT) );
   hDC = BeginPaint( hWnd, &ps );

   // Inform Windows that painting is complete.

   EndPaint( hWnd, &ps );
   break;

  case WM_CLOSE:
   // Close this window and all child windows.

   KillTimer( hWnd, TIMER1 );
   DestroyWindow( hWnd );
   if ( hWnd == hWndMain )
     PostQuitMessage( 0 ); // Quit the application.
   break;

  default:
   // This choice is taken for all messages not specifically
   // covered by a case statement.

   return DefWindowProc( hWnd, Message, wParam, lParam );
   break;
}

goto 語句中的標(biāo)簽
源程序中 identifier 標(biāo)簽的外觀聲明了一個標(biāo)簽。僅 goto 語句可將控制轉(zhuǎn)移到 identifier 標(biāo)簽。以下代碼片段闡釋了 goto 語句和 identifier 標(biāo)簽的使用:
標(biāo)簽無法獨(dú)立出現(xiàn),必須總是附加到語句。如果標(biāo)簽需要獨(dú)立出現(xiàn),則必須在標(biāo)簽后放置一個 null 語句。
標(biāo)簽具有函數(shù)范圍,并且不能在函數(shù)中重新聲明。但是,相同的名稱可用作不同函數(shù)中的標(biāo)簽。

// labels_with_goto.cpp
// compile with: /EHsc
#include <iostream>
int main() {
  using namespace std;
  goto Test2;

  cout << "testing" << endl;

  Test2:
   cerr << "At Test2 label." << endl;
// At Test2 label.
}


復(fù)合語句(塊)
復(fù)合語句包含封閉在大括號 ({ }) 中的零個或多個語句??梢栽谌魏纹谕Z句出現(xiàn)的位置使用復(fù)合語句。復(fù)合語句通常稱為“塊”。
語法

{ [ statement-list ] }

備注
以下示例使用復(fù)合語句作為 if 語句的 statement 部分(有關(guān)語法的詳細(xì)信息,請參閱 if 語句):

if( Amount > 100 )
{
  cout << "Amount was too large to handle\n";
  Alert();
}
else
  Balance -= Amount;

注意
由于聲明是一個語句,因此聲明可以是 statement-list 內(nèi)的某個語句。因此,復(fù)合語句內(nèi)聲明的名稱(而不是顯式聲明為靜態(tài)的名稱)具有局部范圍和(對于對象)生存期。

相關(guān)文章

  • VC++操作SQLite簡單實(shí)例

    VC++操作SQLite簡單實(shí)例

    這篇文章主要介紹了VC++操作SQLite,很實(shí)用的功能,需要的朋友可以參考下
    2014-07-07
  • C++ 內(nèi)聯(lián)函數(shù)詳解

    C++ 內(nèi)聯(lián)函數(shù)詳解

    內(nèi)聯(lián)函數(shù)是c++為了提高程序的運(yùn)行速度做的改進(jìn),本片文章詳細(xì)介紹了C++ 的內(nèi)聯(lián)函數(shù),本文就來詳細(xì)的介紹一下,感興趣的朋友可以了解一下
    2021-11-11
  • 對稱矩陣的壓縮儲存講解

    對稱矩陣的壓縮儲存講解

    今天小編就為大家分享一篇關(guān)于對稱矩陣的壓縮儲存講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • C++實(shí)現(xiàn)日期計算器詳細(xì)代碼示例

    C++實(shí)現(xiàn)日期計算器詳細(xì)代碼示例

    這篇文章主要給大家介紹了關(guān)于C++實(shí)現(xiàn)日期計算器的相關(guān)資料,基于C++編寫的簡單的日期計算器,供大家參考,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • C語言實(shí)現(xiàn)通訊錄功能

    C語言實(shí)現(xiàn)通訊錄功能

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)通訊錄功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • C語言數(shù)組指針的小例子

    C語言數(shù)組指針的小例子

    這篇文章介紹了,用c語言實(shí)現(xiàn)的一個數(shù)組指針的小例子,有需要的朋友可以參考一下
    2013-07-07
  • C++實(shí)現(xiàn)尋找最低公共父節(jié)點(diǎn)的方法

    C++實(shí)現(xiàn)尋找最低公共父節(jié)點(diǎn)的方法

    這篇文章主要介紹了C++實(shí)現(xiàn)尋找最低公共父節(jié)點(diǎn)的方法,是數(shù)據(jù)結(jié)構(gòu)中二叉樹的一個經(jīng)典算法,有一定的借鑒價值,需要的朋友可以參考下
    2014-09-09
  • C++布隆過濾器的使用示例

    C++布隆過濾器的使用示例

    寧可錯殺一千,也不放過一個,這是布隆過濾器的特點(diǎn),本文主要介紹了C++布隆過濾器的使用示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09
  • C語言實(shí)現(xiàn)繪制余弦曲線

    C語言實(shí)現(xiàn)繪制余弦曲線

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)繪制余弦曲線的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • C語言實(shí)現(xiàn)中綴表達(dá)式轉(zhuǎn)換為后綴表達(dá)式

    C語言實(shí)現(xiàn)中綴表達(dá)式轉(zhuǎn)換為后綴表達(dá)式

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)中綴表達(dá)式轉(zhuǎn)換為后綴表達(dá)式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04

最新評論

邵东县| 新邵县| 尼玛县| 本溪市| 原阳县| 水城县| 庆云县| 诏安县| 乌兰县| 淮滨县| 阿勒泰市| 当涂县| 个旧市| 安义县| 洛川县| 苏尼特左旗| 沐川县| 保山市| 霍林郭勒市| 朝阳县| 肥城市| 乐至县| 泸水县| 吴忠市| 积石山| 花莲市| 和龙市| 黎川县| 高要市| 郧西县| 池州市| 东港市| 江门市| 伊金霍洛旗| 铜川市| 合山市| 调兵山市| 军事| 玉林市| 丹棱县| 个旧市|