欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

介紹C語言程序中的注釋等輔助語句如何使用

 更新時間:2022年04月21日 14:09:42   作者:清風自在?流水潺潺  
C語言中分為單行注釋和多行注釋:單行注釋?以?//?開始的這一行文本,可能不被編譯器所支持;多行注釋從?/*?到?*/之間的所有文本,不支持嵌套,下面讓我們詳細來了解

一、程序中的輔助語句(上)

C語言中的注釋

  • 注釋是幫助理解程序而編寫的文本
  • 注釋本身對程序功能無任何貢獻注釋分為單行注釋和多行注釋
  • 注釋分為單行注釋和多行注釋

注意:單行注釋不一定被編譯器支持

注釋的語法

單行注釋

  • 從 // 開始到當前行結束的所有文本(注釋范圍只涉及一行文本)
  • 單行注釋中可以重復出現(xiàn) // (無特殊含義,被看作注釋文本)

多行注釋

  • 從 */ 開始到 */ 結束的所有文本(注釋范圍可以涉及多行文本)
  • 多行注釋不支持嵌套(錯誤用法:/* ... abc ... /* d */ ...*/)

示例

int main()
{
    /*
        多行注釋
        定義一個變量,并且初始化
    */
    int i = (int) (10.3 / 3);
    printf("i = %d\n", i);
    //單行注釋
    /*
        // 多行注釋中嵌套單行注釋,無意義
    */
    return 0;
}

賦值語句

連續(xù)賦值

  • 多個賦值操作組合在一起,如: a = b = c ...

復合賦值

  • 數(shù)學運算與賦值操作組合在一起
  • 如:a += 1,a -= 2,a *= 3,a /= 4

上代碼:

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 10;
    a = b = b + 1; // a=>11  b=>11
    printf("a = %d, b = %d\n", a, b);
    a += 1;
    a -= 2;
    a *= 3;
    a /= 4;
    // a => 7
    printf("a = %d\n", a);
    /*
        復合賦值與連續(xù)賦值相結合
    */
    a += b -= 1;
    printf("a = %d, b = %d\n", a, b);
    return 0;
}

下面為輸出結果:

三目運算符(條件運算符)

  • 本質:if ... else ... 語句的縮寫版
  • 語法:(條件) ? (為真時的語句) : (為假時的語句)

注意事項

  • 三目運算表達式最后產生的是一個值,因此整個表達式不能作為左值使用

逗號表達式

  • 逗號(,)是一種特殊的運算符
  • 逗號可以將多個語句連接起來組合成一個語句
  • 語法:語句1,語句2,語句3,...,語句n

下面代碼就是采用逗號表達式將多個語句連在一起:

int main()
{
    int a = 0;
    int b = 1;
    a = 2, b = 3, printf("a + b = %d\n", a + b);
    return 0;
}

逗號表達式補充說明

  • 逗號 (,) 優(yōu)先級最低,逗號表達式可以配合括號使用
  • 逗號表達式的意義是將多個語句連接為一個語句
  • 逗號表達式從左向右開始執(zhí)行語句
  • 逗號表達式的值就是最右邊語句的值

下面的代碼就是綜合逗號表達式和三目運算符:

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 10;
    int c = 0;
    a = (b < 10) ? 1 : 2;
    printf("a = %d\n", a);
    (a < 5) ? (a = 5) : (a = 0);
    printf("a = %d\n", a);
    /*
    ((a == 5) ? a : b) = 10; // ERROR
    */
    a = b = c = 0;
    c = (a = 2, b = 3, a + b);
    printf("a = %d\n", a);
    printf("b = %d\n", b);
    printf("c = %d\n", c);
    c -= a;  // c = c - a;
    printf("c = %d\n", c);
    return 0;
}

下面為輸出結果:

小結

  • 注釋是幫助理解程序而編寫的文本,對程序功能無貢獻
  • 數(shù)學運算與賦值操作可以組合在一起使用
  • 三目運算符可以理解為 if ...else .. .的縮寫形式
  • 逗號表達式的意義是將多個語句連接為一個語句

二、程序中的輔助語句(下)

自增 (++) 與自減 (--) 運算符

前置:先自增(自減),再取值

  • ++v;
  • --v;

后置:先取值,再自增(自減)

  • v++;
  • v--;

舉一個簡單的例子,

v = 1, y = ++v; 執(zhí)行完之后v = 2, y = 2;

v = 1, y = v++; 執(zhí)行完之后v = 2, y = 1;

注意事項

  • 自增(自減)操作符的結合方向 “從右至左”
  • 不要在一個表達式中混合四則運算與自增(自減)運算

上代碼:

#include <stdio.h>
int main()
{
    int a = 0;
    int c = 1;
    a = -c++;  // c -> 2
    printf("a = %d\n", a);
    a = +(++c); // +(++c); c -> 3
    printf("a = %d\n", a);
    a = -c--;  // c -> 2
    printf("a = %d\n", a);
    printf("c = %d\n", c);
    return 0;
}

下面為輸出結果:

goto - 程序世界中的“破壞者”

  • goto是C語言中的一個關鍵字,用于無條件暴力跳轉
  • goto的跳轉位置由標簽指定(具體指定某行代碼)
  • 標簽就是一個C語言中的合法命名,并以冒號(∶)結束
  • 語法:goto LABEL;

如下所示:

c = 1;
goto LABEL;
c = 2;
LABEL:
    printf("c = %d\n",c);

注意事項

  • goto在程序中極具破壞性,會破壞程序結構,造成程序難以理解和維護,現(xiàn)代軟件開發(fā)已禁用goto。

上代碼:

#include <stdio.h>
int main()
{
    int a = 0;
    int c = 1;
    if( a + c > 0 )
    {
        printf("a = %d, c = %d\n", a, c);
        goto ELSE;
    }
    else
    {
        ELSE: printf("%d + %d = %d\n", a, c, a + c);
        goto FOR;
    }
    for(c=10; c>0; c--)
    {
        FOR:
        printf("c = %d\n", c);
    }
    return 0;
}

下面為輸出結果:

可以看到 c 輸出為1,這是因為使用 goto 語句后,直接調到 FOR 標簽所在的位置,導致了 for 循環(huán)沒有執(zhí)行。

小結

  • 前置 ++ 和 -- :先自增(自減),再取值
  • 后置 ++ 和 --:先取值,再自增(自減)
  • goto 是C語言中的一個關鍵字,用于無條件暴力跳轉
  • 現(xiàn)代軟件開發(fā)已禁用goto(弊大于利)

到此這篇關于介紹C語言程序中的注釋等輔助語句如何使用的文章就介紹到這了,更多相關C語言 輔助語句內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 求子數(shù)組最大和的解決方法詳解

    求子數(shù)組最大和的解決方法詳解

    本篇文章是對求子數(shù)組最大和的解決方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言堆與二叉樹的順序結構與實現(xiàn)

    C語言堆與二叉樹的順序結構與實現(xiàn)

    堆是計算機科學中一類特殊的數(shù)據(jù)結構的統(tǒng)稱,通常是一個可以被看做一棵完全二叉樹的數(shù)組對象。而堆排序是利用堆這種數(shù)據(jù)結構所設計的一種排序算法。本文將詳細介紹堆與二叉樹的順序結構與實現(xiàn),需要的可以參考一下
    2022-05-05
  • C++基于EasyX實現(xiàn)簡單掃雷游戲

    C++基于EasyX實現(xiàn)簡單掃雷游戲

    這篇文章主要為大家詳細介紹了C++基于EasyX實現(xiàn)簡單掃雷游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C/C++詳解實現(xiàn)二層轉發(fā)

    C/C++詳解實現(xiàn)二層轉發(fā)

    數(shù)據(jù)鏈路層是開放系統(tǒng)互連 (OSI) 模型中的第二層,該層用于通過 LAN 等單一網絡進行通信的節(jié)點,第二層數(shù)據(jù)包不能從一個網絡傳輸?shù)搅硪粋€網絡。而二層轉發(fā)是根據(jù)報文的目的MAC直接進行轉發(fā),轉發(fā)過程中不用對報文的頭部做任何的修改
    2022-05-05
  • C++中new與delete、malloc與free應用分析

    C++中new與delete、malloc與free應用分析

    這篇文章主要介紹了C++中new與delete、malloc與free應用分析,很重要的概念,需要的朋友可以參考下
    2014-08-08
  • 最新評論