我的教授通常会问我的班级在给定的课程中有多少陈述,但我无法确定他所定义的陈述。似乎if / else是一个语句,而for循环是一个语句,无论其中是否有其他所谓的语句。是否有关于此事的管理规则,还是他对自己发明的定义?
由于
答案 0 :(得分:3)
对于一个精确的definition陈述:
定义:语句是执行某些操作的代码块。赋值语句为变量赋值。 for语句执行循环。 在C中,C ++和C#语句可以使用大括号
组合在一起作为一个语句{ 语句1; 语句2; }
就计数陈述而言,我同意其他人的意见,没有多大意义。虽然计算代码行(LOC)实际上有一些价值,并且有很多研究试图将LOC的数量与开发人员的工作量联系起来。您的教师可能会将您的陈述和陈述视为一个LOC,而事实并非如此。
答案 1 :(得分:1)
语句嵌套,即较小的语句可以加入较大的语句,如复合语句。出于这个原因,关于“该程序中有多少语句”的问题是模棱两可的。首先必须定义计数方法。如果没有它,“多少”的问题就毫无意义。
答案 2 :(得分:0)
在计算机编程中发表声明 可以被认为是最小的 必要的独立元素 编程语言。一个程序是 由一个或多个序列形成 声明。声明将有 内部组件(例如, 表达式)。
答案 3 :(得分:0)
这是用JS语言处理语句解析的函数:
static void do_statement(CsCompiler *c )
{
int tkn;
switch (tkn = CsToken(c)) {
case T_IF: do_if(c); break;
case T_WHILE: do_while(c); break;
case T_WITH: do_with(c); break;
case T_DO: do_dowhile(c); break;
case T_FOR: do_for(c); break;
case T_BREAK: do_break(c); CsSaveToken(c,CsToken(c)); break;
case T_CONTINUE: do_continue(c); CsSaveToken(c,CsToken(c)); break;
case T_SWITCH: do_switch(c); break;
case T_CASE: /*do_case(c);*/ CsParseError(c,"'case' outside of switch"); break;
case T_DEFAULT: /*do_default(c);*/ CsParseError(c,"'default' outside of switch"); break;
case T_RETURN: do_return(c); break;
case T_DELETE: do_delete(c); break;
case T_TRY: do_try(c); break;
case T_THROW: do_throw(c); break;
case '{': do_block(c, 0); break;
case ';': ; break;
default:
{
CsSaveToken(c,tkn);
do_expr(c);
break;
}
}
}
如您所见,它包含for
,while
以及表达式(由;
分隔)等内容