📄 2.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0053)http://www.hificat.com/study/c%20lesson/lesson8_2.htm -->
<HTML><HEAD><TITLE>杭州电子&计算机工作室 欢迎您! Welcome to HangZhou Electron & Computer Studio</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>A:link {
COLOR: #3366cc; TEXT-DECORATION: none
}
A:visited {
COLOR: #3366cc; TEXT-DECORATION: none
}
A:active {
COLOR: #3366cc; TEXT-DECORATION: none
}
A:hover {
COLOR: #3366cc; TEXT-DECORATION: underline
}
TD {
FONT-SIZE: 9pt; COLOR: #3366cc; FONT-FAMILY: "宋体"; TEXT-DECORATION: none
}
A {
FONT-SIZE: 9pt; COLOR: #3366cc; FONT-FAMILY: "宋体"; TEXT-DECORATION: none
}
.A {
FONT-SIZE: 9pt; COLOR: #3366cc; FONT-FAMILY: "宋体"; TEXT-DECORATION: none
}
.coast {
LINE-HEIGHT: 180%
}
.coast1 {
LINE-HEIGHT: 120%
}
.unnamed1 {
BORDER-RIGHT: #e0fdfe thin dotted; BORDER-TOP: #0099ff thin dotted; BORDER-LEFT: #0099ff thin dotted; BORDER-BOTTOM: #ffffff thin dotted
}
.unnamed2 {
BORDER-RIGHT: #e2fcfe thin dotted; BORDER-TOP: #0099ff thin dotted; BORDER-LEFT: #0099ff thin dotted; BORDER-BOTTOM: #ffffff thin dotted
}
.unnamed3 {
BORDER-RIGHT: #ffffff; BORDER-TOP: #0099ff thin; BORDER-LEFT: #ffffff thin; BORDER-BOTTOM: #0099ff
}
.unnamed4 {
BORDER-TOP-WIDTH: thick; BORDER-LEFT-WIDTH: thick; BORDER-LEFT-COLOR: #0099ff; BORDER-BOTTOM-WIDTH: thick; BORDER-BOTTOM-COLOR: #ffffff; BORDER-TOP-COLOR: #0099ff; BORDER-RIGHT-WIDTH: thick; BORDER-RIGHT-COLOR: #ffffff
}
.style1 {
FONT-SIZE: 12pt
}
</STYLE>
<META content="MSHTML 6.00.2900.2873" name=GENERATOR></HEAD>
<BODY text=#000000 bgColor=#def6ff
background=2.files/background_content_neu.gif>
<TABLE height=130 cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=top>
<TD width=790 background=2.files/main-top.jpg height=140>
<TABLE cellSpacing=0 cellPadding=0 width=760 border=0>
<TBODY>
<TR>
<TD width=313 rowSpan=2><IMG height=1 src="2.files/1x1.gif"
width=1></TD>
<TD vAlign=bottom><IMG height=52 src="2.files/title1.jpg"
width=454></TD></TR>
<TR>
<TD vAlign=bottom> </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE height=167 cellSpacing=0 cellPadding=0 width=757 border=0>
<TBODY>
<TR>
<TD width=1 height=200> </TD>
<TD vAlign=top align=left width=756 height=200>
<TABLE cellSpacing=0 cellPadding=0 width="757%" border=0>
<TBODY>
<TR vAlign=top align=left>
<TD width=10 height=5><IMG height=11
src="2.files/kartei_oben_links.gif" width=10></TD>
<TD width=595 height=5><IMG height=11
src="2.files/kartei_oben_mitte.gif" width=399></TD>
<TD width=151 height=5> </TD></TR>
<TR vAlign=top align=left>
<TD width=10 bgColor=#0099ff height=10><IMG height=17
src="2.files/kartei_links.jpg" width=10></TD>
<TD class=textKlein vAlign=center align=left width=595 bgColor=#0099ff
height=10><B><FONT color=#ffffff>首页</FONT><FONT color=#ffffff>>
单片机教学(C语言教程)</FONT></B></TD>
<TD width=151 bgColor=#0099ff height=10> </TD></TR></TBODY></TABLE>
<TABLE cellSpacing=2 cellPadding=2 width="100%" border=0>
<TBODY>
<TR>
<TD>
<DIV class=title1 align=center
style1><STRONG>第八课 语 句(2)-复合语句</STRONG></DIV></TD></TR>
<TR>
<TD> 曾经在BBS上有朋友问过我{}是什么意思?什么作用?在C中是有不少的括号,如{},[],()等,确实会让一些初入门的朋友不解。在VB等一些语言中同一个()号会有不同的作用,它可以用于组合若干条语句形成功能块,可以用做数组的下标等,而在C中括号的分工较为明显,{}号是用于将若干条语句组合在一起形成一种功能块,这种由若干条语句组合而成的语句就叫复合语句。复合语句之间用{}分隔,而它内部的各条语句还是需要以分号";"结束。复合语句是允许嵌套的,也是就是在{}中的{}也是复合语句。复合语句在程序运行时,{}中的各行单语句是依次顺序执行的。以C语言中可以将复合语句视为一条单语句,也就是说在语法上等同于一条单语句。对于一个函数而言,函数体就是一个复合语句,也许大家会因此知道复合语句中不单可以用可执行语句组成,还可以用变量定义语句组成。要注意的是在复合语句中所定义的变量,称为局部变量,所谓局部变量就是指它的有效范围只在复合语句中,而函数也算是复合语句,所以函数内定义的变量有效范围也只在函数内部。关于局部变量和全局变量的具体用法会在说到函数时具体说明。下面用一段简单的例子简单说明复合语句和局部变量的使用。
<P>#include <at89x51.h><BR>#include <stdio.h></P>
<P>void main(void)<BR>{ <BR>unsigned int a,b,c,d;
//这个定义会在整个main函数中?</P>
<P>SCON = 0x50; //串口方式1,允许接收<BR>TMOD = 0x20; //定时器1定时方式2<BR>TH1 =
0xE8; //11.0592MHz 1200波特率<BR>TL1 = 0xE8;<BR>TI = 1;<BR>TR1 = 1;
//启动定时器</P>
<P>a = 5;<BR>b = 6;<BR>c = 7;<BR>d = 8; //这会在整个函数有效<BR>printf("0:
%d,%d,%d,%d\n",a,b,c,d);<BR>{ //复合语句1<BR>unsigned int a,e;
//只在复合语句1中有效<BR>a = 10,e = 100;<BR>printf("1:
%d,%d,%d,%d,%d\n",a,b,c,d,e);<BR>{ //复合语句2<BR>unsigned int b,f;
//只在复合语句2中有效<BR>b = 11,f = 200;<BR>printf("2:
%d,%d,%d,%d,%d,%d\n",a,b,c,d,e,f);<BR>}//复合语句2结束<BR>printf("1:
%d,%d,%d,%d,%d\n",a,b,c,d,e);<BR>}//复合语句1结束<BR>printf("0:
%d,%d,%d,%d\n",a,b,c,d);</P>
<P>while(1);<BR>}</P>
<P>运行结果:<BR>0:5,6,7,8<BR>1: 10,6,7,8,100<BR>2:
10,11,7,8,100,200<BR>1: 10,6,7,8,100<BR>0:5,6,7,8</P>
<P>结合以上的说明想想为何结果会是这样。</P>
<P></P><BR></TD></TR>
<TR>
<TD>
<P align=center><A class=T12_R4
href="http://www.hificat.com/study/c%20lesson/lesson8_2/p8_2.rar"
target=_blank><STRONG>示例程序下载</STRONG></A></P></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE class=coast cellSpacing=0 cellPadding=0 width=736 border=0>
<TBODY>
<TR>
<TD align=middle>
<DIV align=center>联系地址:浙江省杭州市拱北小区永和坊9幢504室 徐玮
邮政编码:310015<BR>Email:xu169@sina.com QQ:12739176 联系电话:0571-85956028(小灵通)
手机:13185018567(短信)<BR>杭州电子&计算机工作室 版权所有 <BR>COPYRIGHT2003 HangZhou
Electron&Computer Studio. All rights reserved
</DIV></TD></TR></TBODY></TABLE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -