介紹C語言程序中的注釋等輔助語句如何使用
一、程序中的輔助語句(上)
C語言中的注釋
- 注釋是幫助理解程序而編寫的文本
- 注釋本身對程序功能無任何貢獻注釋分為單行注釋和多行注釋
- 注釋分為單行注釋和多行注釋
注意:單行注釋不一定被編譯器支持
注釋的語法
單行注釋
- 從 // 開始到當(dāng)前行結(jié)束的所有文本(注釋范圍只涉及一行文本)
- 單行注釋中可以重復(fù)出現(xiàn) // (無特殊含義,被看作注釋文本)
多行注釋
- 從 */ 開始到 */ 結(jié)束的所有文本(注釋范圍可以涉及多行文本)
- 多行注釋不支持嵌套(錯誤用法:/* ... abc ... /* d */ ...*/)
示例
int main()
{
/*
多行注釋
定義一個變量,并且初始化
*/
int i = (int) (10.3 / 3);
printf("i = %d\n", i);
//單行注釋
/*
// 多行注釋中嵌套單行注釋,無意義
*/
return 0;
}賦值語句
連續(xù)賦值
- 多個賦值操作組合在一起,如: a = b = c ...
復(fù)合賦值
- 數(shù)學(xué)運算與賦值操作組合在一起
- 如: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);
/*
復(fù)合賦值與連續(xù)賦值相結(jié)合
*/
a += b -= 1;
printf("a = %d, b = %d\n", a, b);
return 0;
}下面為輸出結(jié)果:

三目運算符(條件運算符)
- 本質(zhì):if ... else ... 語句的縮寫版
- 語法:(條件) ? (為真時的語句) : (為假時的語句)

注意事項
- 三目運算表達式最后產(chǎn)生的是一個值,因此整個表達式不能作為左值使用
逗號表達式
- 逗號(,)是一種特殊的運算符
- 逗號可以將多個語句連接起來組合成一個語句
- 語法:語句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;
}下面為輸出結(jié)果:

小結(jié)
- 注釋是幫助理解程序而編寫的文本,對程序功能無貢獻
- 數(shù)學(xué)運算與賦值操作可以組合在一起使用
- 三目運算符可以理解為 if ...else .. .的縮寫形式
- 逗號表達式的意義是將多個語句連接為一個語句
二、程序中的輔助語句(下)
自增 (++) 與自減 (--) 運算符
前置:先自增(自減),再取值
- ++v;
- --v;
后置:先取值,再自增(自減)
- v++;
- v--;
舉一個簡單的例子,
v = 1, y = ++v; 執(zhí)行完之后v = 2, y = 2;
v = 1, y = v++; 執(zhí)行完之后v = 2, y = 1;
注意事項
- 自增(自減)操作符的結(jié)合方向 “從右至左”
- 不要在一個表達式中混合四則運算與自增(自減)運算
上代碼:
#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;
}下面為輸出結(jié)果:

goto - 程序世界中的“破壞者”
- goto是C語言中的一個關(guān)鍵字,用于無條件暴力跳轉(zhuǎn)
- goto的跳轉(zhuǎn)位置由標(biāo)簽指定(具體指定某行代碼)
- 標(biāo)簽就是一個C語言中的合法命名,并以冒號(∶)結(jié)束
- 語法:
goto LABEL;
如下所示:
c = 1;
goto LABEL;
c = 2;
LABEL:
printf("c = %d\n",c);注意事項
- goto在程序中極具破壞性,會破壞程序結(jié)構(gòu),造成程序難以理解和維護,現(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;
}下面為輸出結(jié)果:

可以看到 c 輸出為1,這是因為使用 goto 語句后,直接調(diào)到 FOR 標(biāo)簽所在的位置,導(dǎo)致了 for 循環(huán)沒有執(zhí)行。
小結(jié)
- 前置 ++ 和 -- :先自增(自減),再取值
- 后置 ++ 和 --:先取值,再自增(自減)
- goto 是C語言中的一個關(guān)鍵字,用于無條件暴力跳轉(zhuǎn)
- 現(xiàn)代軟件開發(fā)已禁用goto(弊大于利)
到此這篇關(guān)于介紹C語言程序中的注釋等輔助語句如何使用的文章就介紹到這了,更多相關(guān)C語言 輔助語句內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++普通函數(shù)指針與成員函數(shù)指針實例解析
這篇文章主要介紹了C++普通函數(shù)指針與成員函數(shù)指針,很重要的知識點,需要的朋友可以參考下2014-08-08
C/C++動態(tài)分配與釋放內(nèi)存的區(qū)別詳細解析
以下是對C與C++中動態(tài)分配與釋放內(nèi)存的區(qū)別進行了詳細的分析介紹,需要的朋友可以過來參考下2013-09-09

