c语⾔有⼏种括号,c语⾔⼩括号的⽤法有哪些
c语⾔⼩括号的⽤法有哪些
C语⾔的⼩括号⾥⾯表⽰⼀条语句,返回值是多条语句中最靠右的语句的返回值,⽐如(a=2,b=3,c=a+b),返回值就是c的值。下⾯⼩编就为⼤家介绍c语⾔⼩括号的⽤法。
1、单⼩括号 ()
①命令组。括号中的命令将会新开⼀个⼦shell顺序执⾏,所以括号中的变量不能够被脚本余下的部分使⽤。括号中多个命令之间⽤分号隔开,最后⼀个命令可以没有分号,各命令和括号之间不必有空格。
②命令替换。等同于`cmd`,shell扫描⼀遍命令⾏,发现了$(cmd)结构,便将$(cmd)中的cmd执⾏⼀次,得到其标准输出,再将此输出放到原来命令。有些shell不⽀持,如tcsh。
③⽤于初始化数组。如:array=(a b c d)
2、双⼩括号 (( ))
①整数扩展。这种扩展计算是整数型的计算,不⽀持浮点型。((exp))结构扩展并计算⼀个算术表达式的
值,如果表达式的`结果为0,那么返回的退出状态码为1,或者 是"假",⽽⼀个⾮零值的表达式所返回的退出状态码将为0,或者是"true"。若是逻辑判断,表达式exp为真则为1,假则为0。
②只要括号中的运算符、表达式符合C语⾔运算规则,都可⽤在$((exp))中,甚⾄是三⽬运算符。作不同进位(如⼆进制、⼋进制、⼗六进制)运算时,输出结果全都⾃动转化成了⼗进制。如:echo $((16#5f)) 结果为95 (16进位转⼗进制)
③单纯⽤ (( )) 也可重定义变量值,⽐如 a=5; ((a++)) 可将 $a 重定义为6
④常⽤于算术运算⽐较,双括号中的变量可以不使⽤$符号前缀。括号内⽀持多个表达式⽤逗号分开。 只要括号中的表达式符合C语⾔运算规则,⽐如可以直接使⽤for((i=0;i<5;i++)), 如果不使⽤双括号, 则为for i in `seq 0 4`或者for i in {0..4}。再如可以直接使⽤if (($i<5)), 如果不使⽤双括号, 则为if [ $i -lt 5 ]。
下⾯的程序给多维数组初始化,注意初始化时花括号和⼩括号的区别
[cpp] view plain
#include
intmain()
{
inta[2][2]={(1,2),(3,4),};//如果把⼩括号换成花括号,结果就不⼀样了,⼩括号(1,2)返回2(3,4)返回4,另外两个元素默认是0
inti,j;
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)shell命令属于什么语言
printf("%d",a[i][j]);
printf("
");
}
int*p=a[0];
printf("%d
",p[0]);
return0; }
/*
运⾏结果:24
00
2
*/

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。