QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2570|回复: 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删不掉。请教专家们啦,看看我这程序错哪。' C& ]9 d7 l% W2 P* _% u0 H
    #include <iostream.h>
    ( M" T1 J- E. l1 w#include <stdio.h>
    5 E: Y/ s- F" i1 w5 W#include <math.h>
    8 _! b" I$ s/ \: v! D: s- jtypedef unsigned char BYTE;4 L, g: v1 w8 o. R
    long Ary2DW (unsigned char p[4]){/ x, X  p2 q6 ~
    int a0,a1,a2,a3;unsigned long A;$ h% g' U: T8 i
    a0=int (p[0]); a1=int (p[1]);
    4 C! Q! [# H/ W5 H3 Y. ma2=int (p[2]); a3=int (p[3]);( Q* d7 D+ d) u6 t3 t, l) U
    A=a3*256*256*256+a2*256*256*256+a0;
    , g$ ]5 m" i# h" `( preturn A;};//实现数的大小正确转换,转换为WORD所代表的实际值 ( D, m" F0 v. W* o
    typedef struct tagBITMAPFILEHEADER {. o( f# H" B& ?2 S* u" P5 R
    BYTE bfType[2];BYTE bfSize[4];! @! ^) F$ Z: J
    BYTE bfRcserved1[2];
    9 m7 a0 P+ R6 `- U0 ?. j, YBYTE bfRcserved2[2];4 T3 [% i/ U; E6 K
    BYTE bfoffBits[4];
    2 |# o; [4 a9 p# d2 F+ s+ F3 w* A}BITMAPFILEHEADER;//定义文件头格式,用相似的数据类型代替系统定义的数据类型
    2 `, `: u- A0 ]& U% Q: Rtypedef struct tagBITMAPINFOHEADER {4 @! \+ L6 {+ Y/ r6 d5 H# A& ~
    BYTE biSize[4];
    & w$ ~! T7 A) U2 HBYTE biWidth[4];4 Y5 _5 h3 n  p# ~" V9 S  O
    BYTE biHeight[4];
    . r+ I8 D' T* n% }& m) m. v. t9 J* ZBYTE biCompression[4];
    1 G  A9 u% Y3 T+ n- Q9 `% wBYTE biXPelsPerMeter[4];
    0 t/ F2 W/ I$ Y+ V3 W# i4 fBYTE biYPelsPerMeter[4];
    * e$ z% d1 i! e) v! }4 @6 t  KBYTE biClrUsed[4];$ y0 S( u- \0 ~- \
    BYTE biClrImportant[4];
    7 L  ^) p7 h2 M3 b! ]1 a* L7 |}BITMAPINFOHEADER;//定义信息头格式,用相似的数据类型代替系统定义的数据类型
    ) d, z* f9 b2 ]0 k* k) l# U  atypedef struct BitmapFile{
    5 d  |$ W; G6 ~8 K! lBITMAPFILEHEADER bmfheader;% {; |5 `0 F# S9 M
    BITMAPINFOHEADER bminfoheader;9 u2 a' r8 S' N
    BYTE bitmapdata[3275520];) h& _, K) B# e9 q( f1 L) R
    }bitmap;//定义所处理图像文件对应BMP的文件格式
    6 T5 o7 P7 s" Y: ?) @& q) V//主函数,将图像区数据读入B、G、R三个数组8 B7 ?2 b* f1 S8 s/ X+ ?0 b: g5 H! l0 T
    int main(); A1 V% C) f# U
    {$ P! g, x. P! ]) y0 T' ~
    bitmap *ample1;1 ~: J! z: h" i/ D( F& [6 n
    FILE *fp, *fp1;
    2 Z2 j% V% S! y- JBYTE R[1280][853],G[1280][853],B[1280][853];! ?. X- y# J" U4 g& P# T" n# I
    long k=0;( k" r" w. @4 l7 ^6 W
    int i,j;
    * U$ p# i" V/ ?7 h$ u; rchar name[20]="try.bmp";//读到新文件的文件名$ A+ S0 w) `4 r% p! m. c+ @
    fp=fopen("D:\\ample1.bmp","rb");//以二进制打开读文件
    3 H% v  |& P6 g9 ffp1=fopen(name,"wb");//为写建立一个新文件名
    3 _) z2 o) l3 R  F1 E% }2 n% Jif(! (ample1=new bitmap)){
    * d1 t5 N! Y* A5 o) H; i9 Icout<<"error"<<endl;return 0;) s2 e9 H. Z2 S$ {  n2 c4 ?
    }
    # o0 C$ V6 v" j2 m5 K" velse/ A$ j! b+ n3 y- R
    {
    " {! n% v9 p+ }4 P# a% ]fread(ample1,sizeof(bitmap),1,fp);/ ?3 d: ?! s( N# M( x" e
    fwrite(ample1,sizeof(bitmap),1,fp1);8 `  s- m$ B3 o1 x; Y
    cout<<"********位图文件头格式:********"<<endl;
    7 {7 I! U" o3 @# mcout<<"位图文件的类型"<<ample1 -> bmfheader.bfType[0]<<ample1 -> bmfheader.bfType[1]<<endl;' a+ S+ a: t7 a; e6 [! G
    cout<<"位图文件的大小"<<Ary2DW(ample1 -> bmfheader.bfSize)<<"字节"<<endl;
    ; A" V9 Z3 {8 s7 _cout<<"********以下是图像数据区********"<<endl;
    2 x$ f5 i* I$ W) L1 v9 [" J6 ?* }//指定像素点,以16进制输出BGR值8 S$ G5 e- c8 k% G, C
    cout<<"像素点B通道的值"<<hex<<int (ample1 -> bitmapdata[0])<<endl;
    , f. l* `9 l  A0 Zcout<<"像素点G通道的值"<<hex<<int (ample1 -> bitmapdata[1])<<endl; 3 S& ~# [2 f, _4 k$ Y8 X
    cout<<"像素点R通道的值"<<hex<<int (ample1 -> bitmapdata[2])<<endl;! B( o* x2 r0 H/ F/ k& ~; L  u
    //将图像区数据读入 R、G、B三个数组
    ) p1 s5 `8 l+ q. y9 Bfor(i=1280; i>=0; i--)
    ! h6 z/ w8 V' Q! V" U7 efor(j=0; j<853; j++) - l# u! D# u5 |; j7 M: c
    {
    8 F1 U, K2 s! s7 B: xB[i][j]=ample1 -> bitmapdata[k++]; ' G% ]" G/ x7 ?* _
    G[i][j]=ample1 -> bitmapdata[k++];
    / t, Q* r4 |' M* [; K6 IR[i][j]=ample1 -> bitmapdata[k++];* p3 G: v. O* F" R, M
    }  C: W% x* t; P: `7 \4 y
    //检查是否将图像数据读入数组- c* z3 b+ M/ J
    cout<<"********以下是内存数组数据********"<<endl;
    : f: C. D9 d  ?* g& n- x; ncout<<"第一排第一个像素点B通道的值"<<int (B[0][0])<<endl;
    6 k, V1 Y/ ~8 X" I! M" ucout<<"最后一排第一个像素点R通道的值"<<int (R[1280][0])<<endl;% k: K( n/ d" T; Y, Q, X$ ?1 Y  i0 \
    return 1;
    & n3 p+ g0 X8 U- ^* }# @. e; p}
    1 I) t# t* g3 i- Odelete ample1;
    # X: N) l! y. g# L6 Mfclose(fp);
    ( G" b! V$ G& V' [$ Ifclose(fp1);5 v) B! B7 @( I9 |2 ], i
    }
    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-6-3 12:36 , Processed in 0.538922 second(s), 52 queries .

    回顶部