QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2357|回复: 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删不掉。请教专家们啦,看看我这程序错哪。
    " d, v: S1 w! W+ F( ^% V#include <iostream.h>
    & S5 L* ?: }% H# U#include <stdio.h>
    5 f$ {  s) i/ o, J: X& x3 E  U#include <math.h>/ ~6 r' U0 t+ D0 o1 C8 q' x4 V
    typedef unsigned char BYTE;& K. d9 e- t) q6 U: k- v! {
    long Ary2DW (unsigned char p[4]){; d' ?% z7 f- K1 s/ Z
    int a0,a1,a2,a3;unsigned long A;9 }8 O+ [; @2 C- v$ ^7 U# j, A; X
    a0=int (p[0]); a1=int (p[1]);
    $ W. E+ H+ X% B+ s, Ua2=int (p[2]); a3=int (p[3]);" D3 l+ B, J$ [# b
    A=a3*256*256*256+a2*256*256*256+a0;6 X1 l0 ]- t6 K1 [
    return A;};//实现数的大小正确转换,转换为WORD所代表的实际值
    % l/ S4 p) B' W3 itypedef struct tagBITMAPFILEHEADER {
    1 x( x# F4 |! Q1 h) uBYTE bfType[2];BYTE bfSize[4];
    / e$ J& J  m- b8 tBYTE bfRcserved1[2];
    7 i& S3 f; C4 W  _) I& c- x, }BYTE bfRcserved2[2];
    " @8 ]% m6 [% R* ]# C; ]% d9 yBYTE bfoffBits[4];  i8 c9 {0 b9 f  `2 F
    }BITMAPFILEHEADER;//定义文件头格式,用相似的数据类型代替系统定义的数据类型
    1 J- l' q% f$ E# I1 r- o( u1 ltypedef struct tagBITMAPINFOHEADER {
    $ ~) [7 o0 u7 j# B% A% j! L$ DBYTE biSize[4];3 ?" D+ w2 J/ |3 c+ T
    BYTE biWidth[4];
    ! _4 v6 `. A: q, s* y" w' KBYTE biHeight[4];7 l/ c) D* T( \. {/ [. x/ S
    BYTE biCompression[4];
    9 W1 H6 {# b) O& RBYTE biXPelsPerMeter[4];8 e' X$ r  y2 q$ w# s+ R! ?5 N
    BYTE biYPelsPerMeter[4];# w6 V9 f0 D0 c* `
    BYTE biClrUsed[4];
    ( i' U0 k* i& p  ^, \BYTE biClrImportant[4];" B; u5 ~# Y7 {/ i2 I8 ~1 e4 P
    }BITMAPINFOHEADER;//定义信息头格式,用相似的数据类型代替系统定义的数据类型: x& R) x% M. L8 u  L
    typedef struct BitmapFile{
    # B8 C7 v0 w" N6 CBITMAPFILEHEADER bmfheader;
    * B, A- g4 M2 O' Z' p  g+ H% s2 `' O+ XBITMAPINFOHEADER bminfoheader;- P. N$ |7 ~$ o
    BYTE bitmapdata[3275520];# k& g. u8 |, e* S( k1 y8 m, G
    }bitmap;//定义所处理图像文件对应BMP的文件格式# u4 c( i6 Z% X  I
    //主函数,将图像区数据读入B、G、R三个数组/ Z+ ^6 @4 d( f& c6 j- f
    int main()7 w! Y) B' y) a8 g) L/ c- ]
    {
    7 \3 m* t: L8 t; [bitmap *ample1;  ~0 M5 p" D; A6 @3 p  p7 L% V
    FILE *fp, *fp1;% C5 o, U9 g, v/ s# K$ e) A
    BYTE R[1280][853],G[1280][853],B[1280][853];- s0 ]- ?/ U# f8 ?( X
    long k=0;
    / Z& Z! Y/ ^8 Tint i,j;
    + Y* f7 _9 V5 w2 b3 @1 D& Lchar name[20]="try.bmp";//读到新文件的文件名
      q( `2 f0 T8 R( Ufp=fopen("D:\\ample1.bmp","rb");//以二进制打开读文件
    1 t8 s: {$ ?' L/ Bfp1=fopen(name,"wb");//为写建立一个新文件名/ w' H- T5 j( l* m
    if(! (ample1=new bitmap)){
    3 c+ K4 N  J* p; x7 t7 Tcout<<"error"<<endl;return 0;5 `2 w- S4 m- F3 n! Z, @  V8 v1 s
    }
    7 k# T& C8 B0 C, E# ]2 selse
    5 q, A( }! Q/ O2 m  W5 {% X{
    " C8 x3 j/ z$ |fread(ample1,sizeof(bitmap),1,fp);, @# }, r' x2 V$ O
    fwrite(ample1,sizeof(bitmap),1,fp1);( p0 e# Q9 F2 d" z/ y
    cout<<"********位图文件头格式:********"<<endl; ' V1 H/ Z0 g  C! }; c, d
    cout<<"位图文件的类型"<<ample1 -> bmfheader.bfType[0]<<ample1 -> bmfheader.bfType[1]<<endl;
    , c) a5 p# w7 N6 l  z4 _cout<<"位图文件的大小"<<Ary2DW(ample1 -> bmfheader.bfSize)<<"字节"<<endl;# V( J1 B# d' a* F+ G$ h2 J2 ?
    cout<<"********以下是图像数据区********"<<endl;- X  Y& W( B6 ~/ S; m$ Q
    //指定像素点,以16进制输出BGR值
    $ k7 A) a, }# Q! F/ C8 R, U# \cout<<"像素点B通道的值"<<hex<<int (ample1 -> bitmapdata[0])<<endl;! d( a- ~  v$ Z4 S
    cout<<"像素点G通道的值"<<hex<<int (ample1 -> bitmapdata[1])<<endl;
    ! A, Z( R3 w9 s$ R% F& ecout<<"像素点R通道的值"<<hex<<int (ample1 -> bitmapdata[2])<<endl;  T! q! L, Y4 }; _, G/ T4 s
    //将图像区数据读入 R、G、B三个数组: h* f3 r8 W  d6 a! f+ k
    for(i=1280; i>=0; i--)
    # l. L- y9 j& D9 d* |8 Sfor(j=0; j<853; j++) . J' {  @. m2 w; d% }+ P6 S
    {  T. @5 w' C) z/ B/ `
    B[i][j]=ample1 -> bitmapdata[k++];
    - L; ?% p5 K, J) |G[i][j]=ample1 -> bitmapdata[k++];
    3 R4 Z7 Z9 }: U( t! ?. ^( vR[i][j]=ample1 -> bitmapdata[k++];5 z" \0 N1 ]4 Y
    }; |; l7 g3 J8 h
    //检查是否将图像数据读入数组
    1 L+ u1 B7 G( Y6 y$ R  N! H5 ocout<<"********以下是内存数组数据********"<<endl;
    ' l; k7 s- ]9 L1 Z: ~cout<<"第一排第一个像素点B通道的值"<<int (B[0][0])<<endl;
    ; Z7 x7 z# D# E6 H$ G& o- ?9 icout<<"最后一排第一个像素点R通道的值"<<int (R[1280][0])<<endl;" G4 l% k7 G; D5 A$ O* Q
    return 1;
    . S+ }+ S, ~% o8 ^' a6 }+ \" \}8 h8 W/ r1 q5 C
    delete ample1;$ o: a" z3 w7 e+ p
    fclose(fp);
    3 p) q( l6 |* e/ I) W& x5 J7 W  Qfclose(fp1);- b6 _) H; g) E; k" h9 }( q
    }
    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, 2025-7-24 13:15 , Processed in 0.524432 second(s), 52 queries .

    回顶部