Win32汇编数组学习2

之前学习过win32汇编数组;还不熟悉;继续熟悉;

先做几个基本的对话框,有一个静态文本框;

定义数组之后,用 wsprintf 函数格式化,然后调用 SetDlgItemText 赋值给静态文本框;

arr1 dd 101,202,303,607,903

    定义一个数组并赋初值,每个元素占4字节;
arr2 dd 3 dup(77)

    定义一个数组,3个元素,每元素占4字节,每个元素初始化为77;
arr3 dd 3 dup(?)

    定义数组,未初始化,将用0填充;
arr4 dd 2 dup(3 dup(7,9))

    定义嵌套数组,数组值依次是:7 9 7 9 7 9 7 9 7 9 7 9,一共占 48 字节;

格式化符;

fmt1   db '%d, %d, %d, %d, %d',0dh,0ah
       db '%d, %d, %d', 0dh,0ah
       db '%d, %d, %d', 0dh,0ah,0

0dh,0ah 是换行; 到0结束;

本来是想4个数组的值都显示在一个静态文本框;

但是4个数组的值一起格式化的时候,总显示这个错误;

根据资料,说要分行写,

invoke wsprintf,addr szbuf,addr fmt1,arr1, arr1[4], arr1[8], arr1[12], arr1[16],\
                               arr2, arr2[4], arr2[8],\
                               arr3, arr3[4], arr3[8],\
                               arr4,arr4[4],arr4[8],\
                               arr4[12],arr4[16],arr4[20],\
                               arr4[24],arr4[28],arr4[32],\
                               arr4[36],arr4[40],arr4[44]

已经分了多行;还是报这个错;

使用2个静态文本框,把arr4的值显示在第2个静态文本框;

asm,

		.386.model flat, stdcalloption casemap :noneinclude		windows.inc
include		user32.inc
includelib	user32.lib
include		kernel32.inc
includelib	kernel32.libICO_MAIN	equ	1000
DLG_MAIN	equ	100
IDC_INFO	equ 	101
IDC_INFO2	equ 	102.data
arr1 dd 101,202,303,607,903
arr2 dd 3 dup(77)
arr3 dd 3 dup(?)
arr4 dd 2 dup(3 dup(7,9))szbuf db 500 dup(0).data?hInstance	dd	?
hWinMain	dd	?.const
fmt1   db '%d, %d, %d, %d, %d',0dh,0ahdb '%d, %d, %d', 0dh,0ahdb '%d, %d, %d', 0dh,0ah,0
fmt2   db '%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d', 0dh,0ah,0.code_ProcDlgMain	proc	uses ebx edi esi hWnd,wMsg,wParam,lParammov	eax,wMsg.if	eax ==	WM_CLOSEinvoke	KillTimer,hWnd,1invoke	EndDialog,hWnd,NULL.elseif	eax ==	WM_INITDIALOGpush	hWndpop	hWinMaininvoke	LoadIcon,hInstance,ICO_MAINinvoke	SendMessage,hWnd,WM_SETICON,ICON_BIG,eaxinvoke wsprintf,addr szbuf,addr fmt1,arr1, arr1[4], arr1[8], arr1[12], arr1[16],\arr2, arr2[4], arr2[8],\arr3, arr3[4], arr3[8]invoke	SetDlgItemText,hWinMain,IDC_INFO,addr szbufinvoke wsprintf,addr szbuf,addr fmt2,arr4,arr4[4],arr4[8],\arr4[12],arr4[16],arr4[20],\arr4[24],arr4[28],arr4[32],\arr4[36],arr4[40],arr4[44]invoke	SetDlgItemText,hWinMain,IDC_INFO2,addr szbuf.elsemov	eax,FALSEret.endifmov	eax,TRUEret_ProcDlgMain	endpstart:invoke	GetModuleHandle,NULLmov	hInstance,eaxinvoke	DialogBoxParam,hInstance,DLG_MAIN,NULL,offset _ProcDlgMain,NULLinvoke	ExitProcess,NULLend	start

rc文件,


#include		<resource.h>#define	ICO_MAIN		1000
#define	DLG_MAIN		100
#define	IDC_INFO		101
#define	IDC_INFO2		102ICO_MAIN	ICON		"Main.ico"DLG_MAIN DIALOG 188, 193, 140, 120
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "数组示例"
FONT 9, "宋体"
{LTEXT "", IDC_INFO, 6, 6, 135, 65LTEXT "", IDC_INFO2, 6, 80, 135, 45
}

 结果;

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/476034.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

快速排序(2)——快速排序的优化

因为Hoare的快速排序写起来容易出错&#xff0c;并且有很多地方不太合适&#xff0c;于是&#xff0c;就有了一下几种优化。 基准值的优化 如果我们一直选取一组数据的第一个数据为基准值&#xff0c;如果遇到重复少的值的化&#xff0c;没什么问题。但是如果重复的值比较多的…

AI生图软件:让创意无限飞扬

随着科技的飞速发展&#xff0c;人工智能(AI)已经逐渐渗透到我们的日常生活之中&#xff0c;其中包括图像编辑。AI生图软件就是这样一种应用了AI技术的创新产品&#xff0c;它正在改变着图像编辑的方式&#xff0c;让我们能够以前所未有的方式创作和分享视觉内容。 一、什么是A…

代码检测规范和git提交规范

摘要&#xff1a;之前开发的项目&#xff0c;代码检测和提交规范都是已经配置好的&#xff0c;最近自己新建的项目就记录下相关配置过程。 1. ESlint配置 2013年6月创建开源项目&#xff0c;提供一个插件化的JavaScript代码检测工具&#xff0c;创建项目是生成的eslintrc.js文…

基于TensorFlow的LibriSpeech语音识别

一、引言 随着人工智能技术的日益成熟&#xff0c;深度学习在语音识别领域取得了显著的突破。本博客将介绍如何使用TensorFlow框架&#xff0c;结合LibriSpeech数据集&#xff0c;构建一个高效的语音识别系统。 目录 一、引言 二、环境准备 为了运行本示例代码&#xff0c;…

4核8G服务器能承受多少并发?

腾讯云4核8G服务器能承受多少并发&#xff1f;阿腾云的4核8G服务器可以支持20个访客同时访问&#xff0c;关于4核8G服务器承载量并发数qps计算测评&#xff0c;云服务器上运行程序效率不同支持人数在线人数不同&#xff0c;公网带宽也是影响4核8G服务器并发数的一大因素&#x…

0205-2-数据链路层

第 3 章 数据链路层 使用点对点信道的数据链路层 数据链路和帧 数据链路层使用的信道主要有以下两种类型&#xff1a; 点对点信道。这种信道使用一对一的点对点通信方式。广播信道。这种信道使用一对多的广播通信方式&#xff0c;因此过程比较复杂。广播信道上连接的主机很多…

力扣 第 124 场双周赛 解题报告 | 珂学家 | 非常规区间合并

前言 整体评价 T4的dp解法没想到&#xff0c;走了一条"不归路", 这个区间合并解很特殊&#xff0c;它是带状态的&#xff0c;而且最终的正解也是基于WA的case&#xff0c;慢慢理清的。 真心不容易&#xff0c;太难了。 T1. 相同分数的最大操作数目 I 思路: 模拟 c…

代码提交commit规范工具

一、idea工具 1.1安装 下载插件&#xff0c;以下是插件名 git commit message helper 安装后重启idea。 1.2使用 第一步&#xff1a; 根据代码提交的不同情况&#xff0c;选择不同的类型 feat表示&#xff1a;新增特性 fix表示&#xff1a;修复bug 等等。。。。 1.3效果…

HTTP请求报文与响应报文格式

HTTP请求报文与响应报文格式 HTTP请求报文与响应报文格式 请求报文包含四部分&#xff1a; a、请求行&#xff1a;包含请求方法、URI、HTTP版本信息b、请求首部字段c、请求内容实体d、空行 响应报文包含四部分&#xff1a; a、状态行&#xff1a;包含HTTP版本、状态码、状态码…

IO进程线程作业day1

1> 使用fgets统计给定文件的行数 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> #include <unistd.h> int main(int argc, const char *argv[]) {//判断外部输入文件名是否规范if(argc!2){printf("in…

语义分割-基础知识

1.cls_iou计算: cls0_iou预测正确的像素个数/&#xff08;预测为该类别的像素个数真实标签为该类别的像素个数-预测正确的像素个数&#xff09; mean_iou各个类别的像素预测准确值相加/像素总个数2.转置卷积(Transposed Convolution) 转置卷积不是卷积的逆运算 转置卷积也是卷…

通过写代码学习AWS DynamoDB (3)- 一致性hash

简介 在本文中&#xff0c;我们将简单介绍一致性hash&#xff08;consistent hash&#xff09;的概念&#xff0c;以及一致性hash可以解决的问题。然后我们将在模拟的DDB实现中实现一个简单版本的基于一致性harsh实现的partition。 问题 在《通过写代码学习AWS DynamoDB &am…