struct
{
long data[256];
}tblock
long *screen;
int Wscreen,Hscreen;void displayblock(int x,int y,tblock *b)
{
int i,j;
for(i = 0;i < 16;i++)
{
for(j = 0;j < 16;j++)
{
screen[x-1+j+(y-1)*Wscreen+j*16] = b.data[j+i*16];
}
}
}
{
long data[256];
}tblock
long *screen;
int Wscreen,Hscreen;void displayblock(int x,int y,tblock *b)
{
int i,j;
for(i = 0;i < 16;i++)
{
for(j = 0;j < 16;j++)
{
screen[x-1+j+(y-1)*Wscreen+j*16] = b.data[j+i*16];
}
}
}
解决方案 »
- 多线程在DEBUG下运行结果正常,但是在Realese下运行不正常。请高手指点,多谢。
- 求多边形与矩形的交集~~~~~~~~~~~~~~~~~~~矢量交集,结果为多边形
- 怎样创建与显示无焦点的非模态窗体?
- 在richedit的onmousemove事件中如何获得当前的鼠标经过的字符串。
- 请问大家,我怎样用crypto api 加密字符串(3DES)?
- redhat9.0 下操作SDRAM的奇怪问题,相信有同行遇到内似的问题,麻烦指点,谢谢!
- ACE到底要如何开始学习呀。哪里有这样的资料下载呢?
- 如何通过文件方式读写excel文件?
- CTabCtrl控件,如何在CTABCTRL控件上加入别的对话框,就像属性页一样
- 我学了C语言还有VC的基础,我现在应该学什么?????
- 有关 c 语言 ++ -- 运算符
- 接收数据的顺序问题.
UP,除了这个1.b.data语法错误,应为b->data
2.Wscreen没有赋初值
3.Hscreen没用到
screen[x-1+j+(y-1)*Wscreen+j*16] = b.data[j+i*16];
应该为:screen[x-1+j+(i+(y-1))*Wscreen] = b.data[j+i*16];
意思就是你没有new一下screen指针应该screen = new long;指针声明了一定要申请内存哦。然后使用完以后要记得delete一下
2. 楼主没有说明这段代码的错误信息是什么,确实很难让人提供足够的帮助,建议楼主先看一看《提问的艺术》一贴3. screen没有申请内存
4. b是个指针,不能使用.,而是应该使用->
5. Wscreen没有付值,很危险