QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2601|回复: 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删不掉。请教专家们啦,看看我这程序错哪。
    5 ~4 o. }1 R. c8 r#include <iostream.h>) n3 f* W3 t+ @0 ?5 @7 ^3 |
    #include <stdio.h>
    7 m& D6 \4 H- p#include <math.h>
    ' q4 X8 k# V5 `) c. w# D) @& stypedef unsigned char BYTE;
    $ ^7 W$ I& z+ g3 L: l' t9 ~long Ary2DW (unsigned char p[4]){! |9 j4 M& U9 ?# D
    int a0,a1,a2,a3;unsigned long A;) A. [0 Z4 P- C( a' ~
    a0=int (p[0]); a1=int (p[1]);2 Z* U8 E* Y5 N( H1 _; A
    a2=int (p[2]); a3=int (p[3]);* {7 J  ~7 e# _* k: u
    A=a3*256*256*256+a2*256*256*256+a0;, i; }$ D! {  z' i8 u' G
    return A;};//实现数的大小正确转换,转换为WORD所代表的实际值
      U. X* Y' M! wtypedef struct tagBITMAPFILEHEADER {3 N8 O8 K$ E$ f  f4 T
    BYTE bfType[2];BYTE bfSize[4];0 \- `8 G  X% ~$ m' b' O
    BYTE bfRcserved1[2];
    - r. p" S. f4 x) m! z! A5 V, e: vBYTE bfRcserved2[2];
    " s0 s" p9 G# L+ W' S) q7 i2 fBYTE bfoffBits[4];
    , f/ d: i# t. r, ?5 Z; H}BITMAPFILEHEADER;//定义文件头格式,用相似的数据类型代替系统定义的数据类型: `* N# `% H8 [0 e
    typedef struct tagBITMAPINFOHEADER {
    & Y7 F# ?8 Z1 i* U6 rBYTE biSize[4];7 E, Y1 y3 m6 C0 Y* H
    BYTE biWidth[4];
      P5 ~) F3 H: H# U( s) a+ q7 s) nBYTE biHeight[4];* ?* @2 h3 x- x2 m
    BYTE biCompression[4];4 s* q7 E5 ?7 Q0 F# n: X* S7 B
    BYTE biXPelsPerMeter[4];( J  K# ^. \: c0 m# w4 X$ Q
    BYTE biYPelsPerMeter[4];' @4 s% @8 M$ d" q7 e+ Y
    BYTE biClrUsed[4];/ m. Y/ ?7 J1 V" T: `+ m
    BYTE biClrImportant[4];7 {4 p" a9 Q7 h9 h8 V. C' `
    }BITMAPINFOHEADER;//定义信息头格式,用相似的数据类型代替系统定义的数据类型$ U7 Q; s; v% N4 |) [  u. z
    typedef struct BitmapFile{  O" Z* C, P& s! N3 c. J
    BITMAPFILEHEADER bmfheader;% E: m( ]8 g" B1 L9 k3 ]/ h
    BITMAPINFOHEADER bminfoheader;! `, \/ ]8 o4 W7 B4 U0 p- D
    BYTE bitmapdata[3275520];
    9 Z" @9 }9 l: D, j. l# s' {}bitmap;//定义所处理图像文件对应BMP的文件格式
    " W$ x5 z8 D3 @  b& E2 Y//主函数,将图像区数据读入B、G、R三个数组
    & z8 W4 m2 T; T+ g: ]0 U) {; Yint main()
      B  H4 q" n9 f( z" c+ G{" P0 ?/ x; W  g3 m8 I
    bitmap *ample1;
    7 p3 O6 }2 w1 S1 K- MFILE *fp, *fp1;
    7 I) d, W  X# S  Z  q8 uBYTE R[1280][853],G[1280][853],B[1280][853];
    ; g8 g/ `2 ~( \+ J% i& I9 ]long k=0;
    ( l% N3 q1 h; K- l  Y, Mint i,j;! d. H+ f! _4 c3 H: q, {1 Y
    char name[20]="try.bmp";//读到新文件的文件名
    * r4 j" R) ?7 T1 A' ^fp=fopen("D:\\ample1.bmp","rb");//以二进制打开读文件( c3 X+ ?3 \" \( w8 i: `4 {
    fp1=fopen(name,"wb");//为写建立一个新文件名3 O6 W. q& N6 c# C1 Z3 _1 b
    if(! (ample1=new bitmap)){
    $ S* G% }2 k) l) Y+ I" i/ hcout<<"error"<<endl;return 0;( n, p7 g/ s6 c
    }
    3 }9 l2 ?# G9 Yelse$ J" @5 O/ f) ?$ d6 Y0 [7 f$ @
    {
    2 E7 `6 {$ B) P. i3 A; ]1 [fread(ample1,sizeof(bitmap),1,fp);% g9 o$ ^- D8 Q1 \
    fwrite(ample1,sizeof(bitmap),1,fp1);) g+ b$ o, C; S- s1 K7 e7 [* V3 i
    cout<<"********位图文件头格式:********"<<endl;
    , V" i/ m5 g! e, G3 I, bcout<<"位图文件的类型"<<ample1 -> bmfheader.bfType[0]<<ample1 -> bmfheader.bfType[1]<<endl;
    . L3 ]* M2 E5 v" b& p5 U) r0 Ncout<<"位图文件的大小"<<Ary2DW(ample1 -> bmfheader.bfSize)<<"字节"<<endl;) _4 b& x0 z$ n0 H
    cout<<"********以下是图像数据区********"<<endl;
    1 Z4 Y8 G; [8 K! w//指定像素点,以16进制输出BGR值
    $ f+ ^- ]. v; D7 Ocout<<"像素点B通道的值"<<hex<<int (ample1 -> bitmapdata[0])<<endl;3 |4 D, A5 O- n, H/ ?1 o
    cout<<"像素点G通道的值"<<hex<<int (ample1 -> bitmapdata[1])<<endl;
    & q2 l+ I) G$ [! Rcout<<"像素点R通道的值"<<hex<<int (ample1 -> bitmapdata[2])<<endl;
    " N: f3 M% T" k3 L/ x/ V- l* W8 f' G//将图像区数据读入 R、G、B三个数组" ^! }& n$ ]9 f
    for(i=1280; i>=0; i--)0 m; V4 I% o/ \' J1 U; k
    for(j=0; j<853; j++)
    5 L' v; k( H( |1 [. o{
    * t/ s$ {- q3 W) f$ j9 NB[i][j]=ample1 -> bitmapdata[k++];
    & `& g  X" I( i$ _1 K1 fG[i][j]=ample1 -> bitmapdata[k++];
    & q3 _; Z7 b1 v" N" j: y* ^R[i][j]=ample1 -> bitmapdata[k++];
    3 G( l9 V- }" k( S) T/ a}/ {, i4 }3 D% ]9 I0 K
    //检查是否将图像数据读入数组" w- V( H$ m3 P& K( A
    cout<<"********以下是内存数组数据********"<<endl;
    0 f7 n8 q+ n+ u. I  ucout<<"第一排第一个像素点B通道的值"<<int (B[0][0])<<endl;1 v3 E4 {: Y' t6 }
    cout<<"最后一排第一个像素点R通道的值"<<int (R[1280][0])<<endl;
    ' ]4 z7 N  x- y+ wreturn 1;
    * ?) W2 K1 M1 A) F! a& J6 g}
    . b& ~( N  y- q# [4 kdelete ample1;: x: ~& ^. x6 w' d
    fclose(fp);
    , B7 V9 [6 G* b/ v' k8 W- Zfclose(fp1);+ ~$ q2 Y7 w# ~# i- n6 P1 ]
    }
    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-7-19 05:47 , Processed in 0.424084 second(s), 52 queries .

    回顶部