c語言小括號的用法有哪些用處
C語言的小括號里面表示一條語句,返回值是多條語句中最靠右的語句的返回值,下面學(xué)習(xí)啦小編就為大家介紹c語言小括號的用法,歡迎大家閱讀。
c語言小括號的用法:單小括號 ()
?、倜罱M。括號中的命令將會新開一個子shell順序執(zhí)行,所以括號中的變量不能夠被腳本余下的部分使用。括號中多個命令之間用分號隔開,最后一個命令可以沒有分號,各命令和括號之間不必有空格。
②命令替換。等同于`cmd`,shell掃描一遍命令行,發(fā)現(xiàn)了$(cmd)結(jié)構(gòu),便將$(cmd)中的cmd執(zhí)行一次,得到其標(biāo)準(zhǔn)輸出,再將此輸出放到原來命令。有些shell不支持,如tcsh。
?、塾糜诔跏蓟瘮?shù)組。如:array=(a b c d)
c語言小括號的用法:雙小括號 (( ))
?、僬麛?shù)擴(kuò)展。這種擴(kuò)展計(jì)算是整數(shù)型的計(jì)算,不支持浮點(diǎn)型。((exp))結(jié)構(gòu)擴(kuò)展并計(jì)算一個算術(shù)表達(dá)式的值,如果表達(dá)式的結(jié)果為0,那么返回的退出狀態(tài)碼為1,或者 是"假",而一個非零值的表達(dá)式所返回的退出狀態(tài)碼將為0,或者是"true"。若是邏輯判斷,表達(dá)式exp為真則為1,假則為0。
?、谥灰ㄌ栔械倪\(yùn)算符、表達(dá)式符合C語言運(yùn)算規(guī)則,都可用在$((exp))中,甚至是三目運(yùn)算符。作不同進(jìn)位(如二進(jìn)制、八進(jìn)制、十六進(jìn)制)運(yùn)算時,輸出結(jié)果全都自動轉(zhuǎn)化成了十進(jìn)制。如:echo $((16#5f)) 結(jié)果為95 (16進(jìn)位轉(zhuǎn)十進(jìn)制)
?、蹎渭冇?(( )) 也可重定義變量值,比如 a=5; ((a++)) 可將 $a 重定義為6
④常用于算術(shù)運(yùn)算比較,雙括號中的變量可以不使用$符號前綴。括號內(nèi)支持多個表達(dá)式用逗號分開。 只要括號中的表達(dá)式符合C語言運(yùn)算規(guī)則,比如可以直接使用for((i=0;i<5;i++)), 如果不使用雙括號, 則為for i in `seq 0 4`或者for i in {0..4}。再如可以直接使用if (($i<5)), 如果不使用雙括號, 則為if [ $i -lt 5 ]。
下面的程序給多維數(shù)組初始化,注意初始化時花括號和小括號的區(qū)別
[cpp] view plain
#include
intmain()
{
inta[2][2]={(1,2),(3,4),};//如果把小括號換成花括號,結(jié)果就不一樣了,小括號(1,2)返回2(3,4)返回4,另外兩個元素默認(rèn)是0
inti,j;
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
printf("%d",a[i][j]);
printf("\n");
}
int*p=a[0];
printf("%d\n",p[0]);
return0;
}
/*
運(yùn)行結(jié)果:
24
00
2
*/
c語言大括號的用法
大括號的作用是把內(nèi)部的多個語句綁在一起,當(dāng)成一個語句。
在c中大括號的作用是將很多語句復(fù)合為一個語句塊,在這個大括號括起來的語句塊中可以定義變量,該變量內(nèi)存出了該語句塊就會被釋放。
char a[10] = {“abcde”};
這個表達(dá)式正確。我讓他繼續(xù)改一下這個例子:
char a[10] {="abcde"};
問他這樣行不行。那讀者以為呢?為什么?錯誤
猜你喜歡:
1.括號的用法及舉例
2.行文中括號的用法
3.文章中括號的用法