问一个简单的问题:下面的语法是什么意思,为什么if{}和for{}后面由;
for (int i=0;i<ca.Length;i++)
{
if ((ca[i]<'0' || ca[i]>'9') && ca[i]!='.')
{
found=false;
break;
}; };
for (int i=0;i<ca.Length;i++)
{
if ((ca[i]<'0' || ca[i]>'9') && ca[i]!='.')
{
found=false;
break;
}; };
for(for-initializeropt;for-conditionopt;for-iteratoropt) embedded-statement
embedded-statement:
block
empty-statement
expression-statement
selection-statement
iteration-statement
jump-statement
try-statement
checked-statement
unchecked-statement
lock-statement
using-statementblock:
{ statement-listopt }empty-statement:
;
for(........) block empty-statement
for (int i=0;i<ca.Length;i++)
{
if ((ca[i]<'0' || ca[i]>'9') && ca[i]!='.')
{
found=false;
break;
}; };
这种分号是没有任何意义的。而这是符合语法的,因为空语句是允许的,也就是说,只要你愿意,你可以在任何语句结束的地方添加任意多的分号。像这样:static void Main()
{
;;;; int i;;;;
i = 0;;
if ( i == 0 )
{
;;;
};;;
}上面所有的多余的分号都是一个性质的,都是废话。