QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2572|回复: 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删不掉。请教专家们啦,看看我这程序错哪。
    6 Y+ I' z( \1 I/ G5 ]/ [& B#include <iostream.h>& R$ n. f4 h. O1 s/ h
    #include <stdio.h>
    9 I/ Q& W" M0 B4 [/ `#include <math.h>& K1 ^; K1 M: l! y
    typedef unsigned char BYTE;
    $ O& T' E& T( a: H! ylong Ary2DW (unsigned char p[4]){
    - H+ |( M7 ~5 ], S( U- Fint a0,a1,a2,a3;unsigned long A;
    / {) a" f. J/ Ea0=int (p[0]); a1=int (p[1]);4 `: @7 {/ A5 ?* h/ Q. U
    a2=int (p[2]); a3=int (p[3]);( c9 c# U4 y3 M4 J
    A=a3*256*256*256+a2*256*256*256+a0;
    ) B7 a0 u# {; E+ w3 xreturn A;};//实现数的大小正确转换,转换为WORD所代表的实际值 6 t( n9 i  D4 I3 W+ @5 H
    typedef struct tagBITMAPFILEHEADER {1 [) u$ }9 q  c0 s6 k/ G5 C
    BYTE bfType[2];BYTE bfSize[4];$ H* H/ m- [: K  _& C3 M3 Q, ]7 P) e
    BYTE bfRcserved1[2];
    7 P) r  q( \% d2 [) H7 x3 d/ PBYTE bfRcserved2[2];
    + l0 \8 C6 l' G0 tBYTE bfoffBits[4];
    * y# h0 C  w* a5 }}BITMAPFILEHEADER;//定义文件头格式,用相似的数据类型代替系统定义的数据类型
    . u% t4 m! H1 M5 Q, ~typedef struct tagBITMAPINFOHEADER {# z3 |; P1 e/ {+ ^6 z
    BYTE biSize[4];( n4 P/ z4 k- h: @9 J5 W
    BYTE biWidth[4];
    * b* f* e( F/ p8 s! R% T* sBYTE biHeight[4];
    $ y4 `1 d0 W1 I8 g3 B% c& g! }! NBYTE biCompression[4];4 d3 D! o/ H1 ]3 K7 H  G
    BYTE biXPelsPerMeter[4];7 d0 S% w/ q2 u4 a6 I
    BYTE biYPelsPerMeter[4];8 F+ v: w, b  J, Q$ ~2 ?
    BYTE biClrUsed[4];3 H2 V/ Y# q. A) {
    BYTE biClrImportant[4];  v8 {7 L9 C: U( X+ B5 |
    }BITMAPINFOHEADER;//定义信息头格式,用相似的数据类型代替系统定义的数据类型1 {8 A. g% u# y* N' i
    typedef struct BitmapFile{/ p1 D5 H! ~6 G$ l* o6 T* D
    BITMAPFILEHEADER bmfheader;
    % ]1 R5 B; N* |BITMAPINFOHEADER bminfoheader;- S& W2 A3 v0 r# v7 i
    BYTE bitmapdata[3275520];( \/ Y* B8 @  ~& G- J3 O3 T) C
    }bitmap;//定义所处理图像文件对应BMP的文件格式2 G5 W, ~9 g/ `0 `8 |/ V) j1 w
    //主函数,将图像区数据读入B、G、R三个数组
    # D1 o9 }7 f  c! sint main()+ P$ E6 A7 n9 H2 o: ^8 N. E
    {
    / o. T& Q" S; ?5 s. S- h0 I3 @bitmap *ample1;
    # J4 O/ s4 P) z  G! J" VFILE *fp, *fp1;% X3 N% G; \1 [
    BYTE R[1280][853],G[1280][853],B[1280][853];2 V7 \# R% s) x
    long k=0;
      t3 R9 G9 u+ Y: Eint i,j;$ z2 i( Z0 x9 ]
    char name[20]="try.bmp";//读到新文件的文件名: O8 j+ v: Z8 I& Z6 g' ^
    fp=fopen("D:\\ample1.bmp","rb");//以二进制打开读文件7 V5 K+ j5 b# b0 M9 _
    fp1=fopen(name,"wb");//为写建立一个新文件名7 j) S: p6 T: f% r; N( R5 Z
    if(! (ample1=new bitmap)){
    " ]% N2 F) {+ Ocout<<"error"<<endl;return 0;
    & T: a2 V) b7 I; ^6 B; [& x}
    % f( R1 \9 W6 ]3 X, N2 h0 }else6 V$ b% m, i! J. N: |: i! h3 J
    {
    $ z( U  S- H0 X  y8 kfread(ample1,sizeof(bitmap),1,fp);
    ! b) u0 J5 h' P9 cfwrite(ample1,sizeof(bitmap),1,fp1);
    ) k1 q7 V- e8 t8 q7 P! B, d! |cout<<"********位图文件头格式:********"<<endl;
    1 ]" Y: y5 q* ccout<<"位图文件的类型"<<ample1 -> bmfheader.bfType[0]<<ample1 -> bmfheader.bfType[1]<<endl;1 [8 V3 h6 }) H
    cout<<"位图文件的大小"<<Ary2DW(ample1 -> bmfheader.bfSize)<<"字节"<<endl;
      h3 u7 e& I7 L$ c3 A$ l! Fcout<<"********以下是图像数据区********"<<endl;
    9 }5 h% X. u4 ~4 r//指定像素点,以16进制输出BGR值
    , M& W9 _: k+ Ycout<<"像素点B通道的值"<<hex<<int (ample1 -> bitmapdata[0])<<endl;
    , o3 d# _; X7 E, d+ X2 gcout<<"像素点G通道的值"<<hex<<int (ample1 -> bitmapdata[1])<<endl; 6 D  K0 {6 I5 \1 x
    cout<<"像素点R通道的值"<<hex<<int (ample1 -> bitmapdata[2])<<endl;
    1 z2 d) M8 w/ |) r, z//将图像区数据读入 R、G、B三个数组7 e+ I% a% g6 D. o, d/ O
    for(i=1280; i>=0; i--)" U" v" k2 W8 ?% ~' _
    for(j=0; j<853; j++)
    1 f  K% d. Z0 I2 K! h: J+ P% \{3 P: s  X/ W% Z  ]' o! F
    B[i][j]=ample1 -> bitmapdata[k++];
    3 N) Y2 j1 i' D2 `G[i][j]=ample1 -> bitmapdata[k++]; : t* ]7 j; |  A
    R[i][j]=ample1 -> bitmapdata[k++];
    " [* @8 L- z/ J3 t}
    9 x1 {& H4 I/ |/ |4 O//检查是否将图像数据读入数组/ t9 f0 a4 ?- b9 \" e% \$ [4 o4 i0 u
    cout<<"********以下是内存数组数据********"<<endl;
      Y9 {' `5 x# Lcout<<"第一排第一个像素点B通道的值"<<int (B[0][0])<<endl;
    ( ~1 p; B& e4 k0 n5 W7 D6 Scout<<"最后一排第一个像素点R通道的值"<<int (R[1280][0])<<endl;* R) Q6 y5 }  {
    return 1;
    : y  R( z8 ^3 z) m# ]8 P}
    # O8 ^. v: `# f# N! M4 n7 p# Xdelete ample1;) `: x6 v7 G: g+ V
    fclose(fp); $ E; Y) f% c; u! c8 W
    fclose(fp1);) s: Q/ ]  w4 x  d& f# R% U- }, U
    }
    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 13:18 , Processed in 0.382260 second(s), 52 queries .

    回顶部