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