QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2636|回复: 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删不掉。请教专家们啦,看看我这程序错哪。
    ; [: b9 u6 U  ]; V5 I0 h#include <iostream.h>5 |) r: K" j1 ]! m# v( o% K
    #include <stdio.h>
    5 u+ y( n% T- V  X$ a+ u8 B/ U8 w#include <math.h>, K! y8 O- U; t0 t
    typedef unsigned char BYTE;* J7 z7 p3 D! d
    long Ary2DW (unsigned char p[4]){
    % N- A. @) g$ T8 Iint a0,a1,a2,a3;unsigned long A;
    3 h4 Y; ~9 e: ha0=int (p[0]); a1=int (p[1]);
    0 i! C: Y- q2 `8 t$ K; W5 Ma2=int (p[2]); a3=int (p[3]);
    3 @- b5 [" w  n' P' |A=a3*256*256*256+a2*256*256*256+a0;
    * @0 P! ~  o+ V5 h4 creturn A;};//实现数的大小正确转换,转换为WORD所代表的实际值 ( w9 M* h( O: f, y9 G$ `1 `
    typedef struct tagBITMAPFILEHEADER {8 O' o1 j6 ]7 S/ p
    BYTE bfType[2];BYTE bfSize[4];
    % x/ V1 e  S9 I# I! MBYTE bfRcserved1[2];
    6 k9 n0 x. r! E2 B/ u' EBYTE bfRcserved2[2];; N. I, b$ ^  L+ U" i. h
    BYTE bfoffBits[4];5 \9 P. W1 B& B6 F
    }BITMAPFILEHEADER;//定义文件头格式,用相似的数据类型代替系统定义的数据类型
    2 t1 q/ l  {" Wtypedef struct tagBITMAPINFOHEADER {
    ' M$ x! y" }4 p) C; ~4 YBYTE biSize[4];
    & e2 M% C% U6 B, TBYTE biWidth[4];
    4 L& ~- J2 O6 y7 l( y( T/ rBYTE biHeight[4];% c/ y8 U& ~, q5 q
    BYTE biCompression[4];
    / F7 J+ Y  |; u: G# D9 m6 S/ `BYTE biXPelsPerMeter[4];
    2 \! E" O% |+ _1 ^1 Y+ RBYTE biYPelsPerMeter[4];9 c5 u! F% I9 P$ A7 @4 V1 Q5 X
    BYTE biClrUsed[4];
    / V& {0 E9 \% M% m0 h; N+ s' B+ j; JBYTE biClrImportant[4];
      M  k0 j; q. c- G) G# I}BITMAPINFOHEADER;//定义信息头格式,用相似的数据类型代替系统定义的数据类型
    3 w: v% t9 Q( }; ?( Stypedef struct BitmapFile{
    ( v! m4 D' o; V5 YBITMAPFILEHEADER bmfheader;
    / _- {' t% G( A6 z- ^* TBITMAPINFOHEADER bminfoheader;7 M5 N; x9 ?+ W  ]3 S& Y3 M2 F- y8 v
    BYTE bitmapdata[3275520];* M4 O( V: r% z3 c
    }bitmap;//定义所处理图像文件对应BMP的文件格式6 \7 ^& A4 Y9 M! F7 A+ J0 X
    //主函数,将图像区数据读入B、G、R三个数组
    6 _$ x: x0 R  ]2 J$ dint main()% U. l) a, Y# }+ {3 E$ R" S
    {
    8 S0 t2 q+ Q- c0 V% g$ l$ X' Kbitmap *ample1;6 _9 d1 w+ P% b
    FILE *fp, *fp1;2 H6 l1 {) O$ I2 O; n
    BYTE R[1280][853],G[1280][853],B[1280][853];' p  N9 S4 r! P: P
    long k=0;' m( O8 J# u" Q' [
    int i,j;
    - `, e! o9 A9 o) ?" G9 Qchar name[20]="try.bmp";//读到新文件的文件名6 m+ @* \$ @5 z( c
    fp=fopen("D:\\ample1.bmp","rb");//以二进制打开读文件' H- P* a7 s" f8 N( F6 X
    fp1=fopen(name,"wb");//为写建立一个新文件名" X9 m; E" @; f# |
    if(! (ample1=new bitmap)){
    - a& N$ [2 o8 U; a+ u+ j! p/ d3 Gcout<<"error"<<endl;return 0;
    % }4 @0 u# C1 v1 M' x}- d8 P" _5 f0 u0 G( u7 i
    else
    ! V, M  U/ x1 J. ?: U: v8 l{* g9 ]: M$ T* M. n: W
    fread(ample1,sizeof(bitmap),1,fp);
    " ^  m$ _) u- i3 N2 v5 Mfwrite(ample1,sizeof(bitmap),1,fp1);& ~; `9 r" C. z+ L7 H, W( X
    cout<<"********位图文件头格式:********"<<endl; 8 [3 A0 W' t: o1 E2 k' t
    cout<<"位图文件的类型"<<ample1 -> bmfheader.bfType[0]<<ample1 -> bmfheader.bfType[1]<<endl;
    # ]! x9 a6 U, O" X$ o0 j# @8 C; @cout<<"位图文件的大小"<<Ary2DW(ample1 -> bmfheader.bfSize)<<"字节"<<endl;
    1 ]) K6 ~; G7 T& X7 P& [# ?# Z7 i8 O$ pcout<<"********以下是图像数据区********"<<endl;
    0 k) v9 q0 x- m+ @& {//指定像素点,以16进制输出BGR值
    , Z' g2 a/ }* z2 ^1 vcout<<"像素点B通道的值"<<hex<<int (ample1 -> bitmapdata[0])<<endl;0 _8 |0 d  w3 B3 @
    cout<<"像素点G通道的值"<<hex<<int (ample1 -> bitmapdata[1])<<endl; % z6 t9 Q+ u8 v' I' r; O
    cout<<"像素点R通道的值"<<hex<<int (ample1 -> bitmapdata[2])<<endl;3 z5 ?2 d4 a! T5 J0 g+ \$ R9 l
    //将图像区数据读入 R、G、B三个数组
    ; O8 O% [5 D  r: n- i" L* d, Y. J+ nfor(i=1280; i>=0; i--)0 V; T+ s8 E& S- C
    for(j=0; j<853; j++) ! l) v" }* D7 ^; x
    {# z' ?* F9 n( A6 u8 r1 R
    B[i][j]=ample1 -> bitmapdata[k++]; 5 s( O; ^. @5 \. [# R: {
    G[i][j]=ample1 -> bitmapdata[k++];
    . }8 w' ~5 N$ l. n# nR[i][j]=ample1 -> bitmapdata[k++];& a' \: _7 [/ T# z, Q
    }
    , m3 q3 E! o; p2 R& n+ I  m8 b( w//检查是否将图像数据读入数组
    " X# `, z% P/ k: g) lcout<<"********以下是内存数组数据********"<<endl;
    8 h7 z' `- ?5 _( u% v6 B' X/ z. ncout<<"第一排第一个像素点B通道的值"<<int (B[0][0])<<endl;
      `$ A, r  z; F8 d; k) Pcout<<"最后一排第一个像素点R通道的值"<<int (R[1280][0])<<endl;' i' t0 O, n# h+ [
    return 1;  [2 P7 c& @: t) O
    }2 K9 B! I* h/ J/ ^+ {/ z  g1 m
    delete ample1;
    ! K- d8 j; a1 @0 qfclose(fp); * I% N- B  z/ O
    fclose(fp1);$ m$ Z  n- o$ p; |
    }
    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-9-3 04:49 , Processed in 0.423877 second(s), 51 queries .

    回顶部