QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2548|回复: 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删不掉。请教专家们啦,看看我这程序错哪。
    4 M+ R6 R9 f2 Z2 U# z! x#include <iostream.h>
    5 S' P* E0 ]. ]) Z$ q#include <stdio.h>" j- ~9 r" {& U: U
    #include <math.h>, Y; }7 b' M+ I
    typedef unsigned char BYTE;
    & J" T! B5 _& U) U2 `+ }long Ary2DW (unsigned char p[4]){
    7 c9 b- o! }* x6 U1 X9 {8 eint a0,a1,a2,a3;unsigned long A;
    & m* i( a7 ]7 b' A9 Ia0=int (p[0]); a1=int (p[1]);
    ' `3 i+ i9 l8 va2=int (p[2]); a3=int (p[3]);
    ; |! `, H! L" e, }4 S& }A=a3*256*256*256+a2*256*256*256+a0;
    1 R/ ]5 p* V: {8 v  p/ Ereturn A;};//实现数的大小正确转换,转换为WORD所代表的实际值 - ]' U( e" y: |( u5 k: ~/ A
    typedef struct tagBITMAPFILEHEADER {
    , e0 Y8 Y. T/ WBYTE bfType[2];BYTE bfSize[4];9 Z+ C# n: a$ R( K9 Z+ x2 y1 G
    BYTE bfRcserved1[2];
    3 `$ y' `. o; D+ E$ [6 pBYTE bfRcserved2[2];
    . _* _$ U: L0 L8 B6 H. |; ]5 bBYTE bfoffBits[4];6 m& L8 u4 Z, v1 d* ~, r
    }BITMAPFILEHEADER;//定义文件头格式,用相似的数据类型代替系统定义的数据类型5 t5 b- M+ f  U& W2 y* x; F
    typedef struct tagBITMAPINFOHEADER {
    - U8 x( f8 f1 J/ iBYTE biSize[4];3 c$ ~  n8 }8 b7 V  _
    BYTE biWidth[4];2 Y! k# y- _0 ~: k* {9 \/ S( e
    BYTE biHeight[4];
    ) @+ M" }2 W: V# P! eBYTE biCompression[4];
    6 D* J1 B- {8 Y8 Y3 @$ dBYTE biXPelsPerMeter[4];" T- F3 o  G% v
    BYTE biYPelsPerMeter[4];
    " X* M9 i# d. G. G+ a2 N) d; EBYTE biClrUsed[4];1 S5 q' V( l' Z2 \
    BYTE biClrImportant[4];
    3 ]6 U- J8 p8 X! K}BITMAPINFOHEADER;//定义信息头格式,用相似的数据类型代替系统定义的数据类型0 E/ B, K5 R+ B  \) ?# t
    typedef struct BitmapFile{
    ! y* r8 `9 K& y. qBITMAPFILEHEADER bmfheader;
    , J0 Y# ]! ]% u# gBITMAPINFOHEADER bminfoheader;
    , V5 T) ]4 P4 HBYTE bitmapdata[3275520];% u8 l7 T1 a4 m% p
    }bitmap;//定义所处理图像文件对应BMP的文件格式, U$ e7 ]2 M$ M
    //主函数,将图像区数据读入B、G、R三个数组
    $ j% Y3 ~' s% v3 Z; Dint main()8 m( c/ ^# i4 m: k
    {5 H) _# m6 I4 w8 o- u/ F# u9 K
    bitmap *ample1;
    & H4 ^' q4 m# {# f5 zFILE *fp, *fp1;
    9 ]( H: q, t9 @% \BYTE R[1280][853],G[1280][853],B[1280][853];' e6 ~- N5 [- L- g9 J
    long k=0;  G! l4 a3 r& H+ C8 e
    int i,j;
    . V: s/ S! y8 }, U' T1 rchar name[20]="try.bmp";//读到新文件的文件名$ x3 X0 M6 s& G% k) m5 O# F
    fp=fopen("D:\\ample1.bmp","rb");//以二进制打开读文件2 }6 ?0 L( H4 [+ _- d+ ~
    fp1=fopen(name,"wb");//为写建立一个新文件名
    0 r1 N' A% k1 R7 P) {if(! (ample1=new bitmap)){
    0 c5 {3 i9 J( u7 ]( R. Zcout<<"error"<<endl;return 0;3 Q  F( ]  w9 [0 q* z! B
    }) v, D& K: V5 A. w% k
    else# O/ I% O; \  `3 O% V
    {
    . F- c% B/ I7 N" e# X) d& tfread(ample1,sizeof(bitmap),1,fp);( h( b. n* h% e; L. W
    fwrite(ample1,sizeof(bitmap),1,fp1);
    ! r9 [' X% H& ~: s( E4 s2 `cout<<"********位图文件头格式:********"<<endl; 5 o0 c& B, z, R9 |/ y
    cout<<"位图文件的类型"<<ample1 -> bmfheader.bfType[0]<<ample1 -> bmfheader.bfType[1]<<endl;
    5 Z2 G4 A- R) t, Pcout<<"位图文件的大小"<<Ary2DW(ample1 -> bmfheader.bfSize)<<"字节"<<endl;4 K- G+ }" P8 R6 z
    cout<<"********以下是图像数据区********"<<endl;
    ' P& A; C, O+ d& k* r: Q//指定像素点,以16进制输出BGR值
    6 ?  n6 J5 _6 U, lcout<<"像素点B通道的值"<<hex<<int (ample1 -> bitmapdata[0])<<endl;) ~+ E( [8 p; Z4 C
    cout<<"像素点G通道的值"<<hex<<int (ample1 -> bitmapdata[1])<<endl; 8 s3 B$ Z" [5 t# ]. D; t; }
    cout<<"像素点R通道的值"<<hex<<int (ample1 -> bitmapdata[2])<<endl;  R. K- v1 d; B/ ?
    //将图像区数据读入 R、G、B三个数组* r+ X: T, u) C! o
    for(i=1280; i>=0; i--)
    / V$ G* l7 v" O* i# ]8 n; ofor(j=0; j<853; j++)
    + m3 g' N" a' j5 W' \6 r{
    6 o- t1 S: }' I9 g5 ]B[i][j]=ample1 -> bitmapdata[k++];
    ( M. c) E" \* B2 uG[i][j]=ample1 -> bitmapdata[k++];
    1 j/ |7 d1 C1 W7 e' y7 D7 P7 [+ wR[i][j]=ample1 -> bitmapdata[k++];3 I; B) A) y* f9 K* `
    }
    ! S+ Q! ], u" {- U1 z; i//检查是否将图像数据读入数组
    ( c) }" k. @' V4 Ycout<<"********以下是内存数组数据********"<<endl;
    & N5 k7 V# U, n$ I" wcout<<"第一排第一个像素点B通道的值"<<int (B[0][0])<<endl;; o3 [, b9 B) S+ Q6 `6 ]  p) x
    cout<<"最后一排第一个像素点R通道的值"<<int (R[1280][0])<<endl;; j2 K; f* t/ F' O* T
    return 1;7 i; e) H" B/ E3 A2 e: n5 y
    }
    ' `9 X' b2 @* ~' y& c, hdelete ample1;. {, ?6 [" P5 _
    fclose(fp); * A1 ]- T& |! C4 ~$ F" d
    fclose(fp1);
    2 z( H1 J" n1 s8 i6 m7 ~3 R- d9 ]}
    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 11:33 , Processed in 0.425425 second(s), 51 queries .

    回顶部