subject_21383.htm
来自「一些关于vc的问答」· HTM 代码 · 共 24 行
HTM
24 行
<p>
序号:21383 发表者:祥子_林 发表日期:2002-11-16 20:52:18
<br>主题:请教
<br>内容:<BR>main()<BR>{<BR> unsigned char a[300];<BR> unsigned char i;<BR> for(i=0;i<300;i++)<BR> {<BR> a[i]=i;<BR> }<BR>}<BR><BR>请问哪里错了?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:王大磊 回复日期:2002-11-16 22:51:15
<br>内容:i 不应该为char型<BR>应该为int 型
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:编程爱好者 回复日期:2002-11-17 00:15:53
<br>内容:因为unsigned char 类型其实是一个值为0—255的ASCII字符,赋值超过255(一个字节8位的最大值),就会出现错误!<BR><BR>#include <iostream.h><BR><BR>int main()<BR>{<BR> unsigned char a[255];<BR> unsigned char i;<BR><BR> for(i=0; i<255; i++)<BR> a[i]=i;<BR><BR> for (i=0; i<255; i++)<BR> cout << a[i] <<endl;<BR><BR> return 0;<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:DWORD 回复日期:2002-11-17 00:40:20
<br>内容://看看下面的程序运行结果,就会明白:<BR>//unsigned char 是8位无符号整型,范围0-255。<BR>//大于255的数则切断,即只转换数的低8位,这样就会重复0-255,<BR>//那么,循环for(i=0;i<300;i++) {a[i]=i;}中,i最大是255,永远满足<BR>//循环条件。OK.<BR><BR>#include <iostream><BR><BR>using namespace std;<BR><BR>void main()<BR>{<BR> unsigned char a[300];<BR> unsigned char i;<BR> int j=0;<BR> for(i=0;i<300;i++,j++)<BR> {<BR> a[i]=i;<BR> cout<<" i= "<<(int)i<<" a["<<(int)i<<"]= "<<(int)a[i]<<endl;<BR> if(j<300) <BR> continue;<BR> else<BR> break;<BR> }<BR>}<BR><BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?