QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2546|回复: 0
打印 上一主题 下一主题

ntd.dll难住机器人发烧友

[复制链接]
字体大小: 正常 放大

937

主题

117

听众

3万

积分

升级  0%

  • TA的每日心情

    2020-10-25 11:55
  • 签到天数: 264 天

    [LV.8]以坛为家I

    自我介绍
    内蒙古大学计算机学院

    社区QQ达人 金点子奖 助人为乐奖 风雨历程奖

    群组2013年数学建模国赛备

    跳转到指定楼层
    1#
    发表于 2013-7-25 17:54 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    我为做机器人自学C++编程,在网上找了个程序改了一下。调试该程序总报错,因为ntd.dll的原因,无匹配的字符信息。我想把我C:\windows\system32\ntd.dll删除后,再下载一个新的ntd.dll替换,老的ntd.dll删不掉。请教专家们啦,看看我这程序错哪。
      a3 \; B+ s0 C) F2 B  L9 L#include <iostream.h>
    8 l  k" l! P! L* v#include <stdio.h>
    * c' o; P; r, D* p#include <math.h>0 b5 P3 J- d" q' E) M
    typedef unsigned char BYTE;
    ; I" ?& u0 S/ h( k: m/ }+ t* Llong Ary2DW (unsigned char p[4]){
    . q; Y! H' q. Q+ k# I+ pint a0,a1,a2,a3;unsigned long A;
    / J8 o, r. V5 C1 t; q# ]9 }! na0=int (p[0]); a1=int (p[1]);
    6 {' @4 y7 B& M. ]0 A8 _a2=int (p[2]); a3=int (p[3]);
    - J, ?6 f7 L8 k' K& d! ~3 TA=a3*256*256*256+a2*256*256*256+a0;
    " q% B+ P) ~4 w* y, Yreturn A;};//实现数的大小正确转换,转换为WORD所代表的实际值
    ' f0 g5 B- G; p$ @, V6 Z5 itypedef struct tagBITMAPFILEHEADER {- }1 Y8 X) T4 s4 R
    BYTE bfType[2];BYTE bfSize[4];
    ! Z  ]) B) F! I( ?  CBYTE bfRcserved1[2];$ ^% R1 }7 D# }% ^
    BYTE bfRcserved2[2];
    : f2 ^" N; q, h* N% a$ g# EBYTE bfoffBits[4];4 O6 l5 c2 f/ G
    }BITMAPFILEHEADER;//定义文件头格式,用相似的数据类型代替系统定义的数据类型) u0 Y7 {. ]! i, Y4 G* R3 x& z6 f
    typedef struct tagBITMAPINFOHEADER {
    * \, A% z7 K: b9 ]& aBYTE biSize[4];% F2 x, A! b) ]/ V8 `
    BYTE biWidth[4];
    9 [7 B  w- v4 f& C, K8 S/ EBYTE biHeight[4];
    / D3 ~5 L/ w. U- Z5 E7 M" z3 W" zBYTE biCompression[4];# Q- a- J6 @4 ~4 S( ]7 T# d! ]
    BYTE biXPelsPerMeter[4];
    0 f8 x3 N5 m: S  _( d) X8 jBYTE biYPelsPerMeter[4];
    2 `. ~/ y& [1 G: N2 fBYTE biClrUsed[4];; A5 s6 |, Q) d$ o- I7 V
    BYTE biClrImportant[4];
    2 u2 z: w5 x5 P) r$ L}BITMAPINFOHEADER;//定义信息头格式,用相似的数据类型代替系统定义的数据类型
    % G( s6 r& k3 ~typedef struct BitmapFile{/ z9 W2 @! \3 _! f
    BITMAPFILEHEADER bmfheader;
    6 t; m) `; e1 L: z4 d& KBITMAPINFOHEADER bminfoheader;4 \; P( D9 S1 M) W" L7 k
    BYTE bitmapdata[3275520];
    - }8 r. h# u$ Y2 ?1 q7 X- g4 ~}bitmap;//定义所处理图像文件对应BMP的文件格式
    2 ]6 T, o/ `- w0 C9 t  p% h; V, }//主函数,将图像区数据读入B、G、R三个数组! W2 k9 }  U1 p0 r0 ?
    int main()
    , @! w7 U8 u8 @$ @2 @{
    1 f) s+ U' u' A  x  z2 j. Gbitmap *ample1;( ?  R- R* x  o/ [2 L8 }2 Z
    FILE *fp, *fp1;
    ( [$ f' h& }( i5 WBYTE R[1280][853],G[1280][853],B[1280][853];! f0 Z/ M7 P& I6 O9 f# m/ K/ M
    long k=0;: ?  L* k* s8 o4 p( P" c! _, l. S; y
    int i,j;
    / j2 q( }; X' H( ~/ ]/ p- N! g$ t/ x" ychar name[20]="try.bmp";//读到新文件的文件名! i8 d+ I7 k6 U+ t, r7 K4 m% F3 ]9 s
    fp=fopen("D:\\ample1.bmp","rb");//以二进制打开读文件$ O% K& P" k2 a
    fp1=fopen(name,"wb");//为写建立一个新文件名
    1 [+ C/ z; C# Z7 V+ p9 c% Sif(! (ample1=new bitmap)){. O+ y  j- G1 t3 G/ V. I
    cout<<"error"<<endl;return 0;: B& {8 ?4 K+ U" M) f! T
    }5 F6 {& t6 y; E6 H1 A8 k; Q
    else) b) i. D' P7 g( q% j
    {5 \4 q; |% e" L: u
    fread(ample1,sizeof(bitmap),1,fp);
    ' Q: i, e; L+ ifwrite(ample1,sizeof(bitmap),1,fp1);/ k+ ^  O! j& j& ?$ w
    cout<<"********位图文件头格式:********"<<endl; ! Y% l6 s- I2 P
    cout<<"位图文件的类型"<<ample1 -> bmfheader.bfType[0]<<ample1 -> bmfheader.bfType[1]<<endl;5 s1 W/ L7 E- k: T7 [
    cout<<"位图文件的大小"<<Ary2DW(ample1 -> bmfheader.bfSize)<<"字节"<<endl;
    : [0 K; k* W) t# ^/ O% Ncout<<"********以下是图像数据区********"<<endl;, a- V) W5 h  O* B  f: Z7 U
    //指定像素点,以16进制输出BGR值
    4 j" B. A3 g0 d) A) Ucout<<"像素点B通道的值"<<hex<<int (ample1 -> bitmapdata[0])<<endl;8 y4 Z+ a1 j  s/ A4 O& `; @9 y
    cout<<"像素点G通道的值"<<hex<<int (ample1 -> bitmapdata[1])<<endl;
    ) |3 g) q! s7 g& kcout<<"像素点R通道的值"<<hex<<int (ample1 -> bitmapdata[2])<<endl;  }/ K% K8 E& J) f7 l/ t( K1 l
    //将图像区数据读入 R、G、B三个数组' b# L+ w. Q. c9 S6 @  c" e
    for(i=1280; i>=0; i--)
    : o3 t  D) Y- T7 wfor(j=0; j<853; j++)
    : A3 Y" u/ C8 b* w$ T{
    ' I! Q0 L  F" y) wB[i][j]=ample1 -> bitmapdata[k++];
    $ u$ O& j7 p# c) XG[i][j]=ample1 -> bitmapdata[k++];
    * Y) @0 }$ I) R! O4 ~! UR[i][j]=ample1 -> bitmapdata[k++];; ~2 e5 ^. W+ }9 p
    }
    : ^, h! K, S9 Z9 S( p//检查是否将图像数据读入数组
    " n! S# ?4 `9 Z( m3 f1 hcout<<"********以下是内存数组数据********"<<endl;* y* Q% D5 r" d3 a
    cout<<"第一排第一个像素点B通道的值"<<int (B[0][0])<<endl;
    % T5 S/ V) P2 j* k. ^cout<<"最后一排第一个像素点R通道的值"<<int (R[1280][0])<<endl;
    ' f& L. A7 q6 f- t: \, e% Yreturn 1;
    2 G2 ^  P. U; T}
    ' i1 y. s8 p* P7 C/ D' Z0 rdelete ample1;
    ( N, }4 ^0 Q% E% \& S4 k' b) Wfclose(fp); & }+ |- q$ V3 t& I0 m+ o/ C* K) f- M
    fclose(fp1);5 H; L7 t3 T$ ~2 ^
    }
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-17 03:41 , Processed in 0.415171 second(s), 52 queries .

    回顶部