控制台和Win32 API程序输出变量地址值
控制台程序;
#include <stdio.h>
int main(){int a = 100;char str[20] = "www.daye.com";printf("%#X, %#X\n", &a, str);return 0;
}
Win32 程序;
/*-------------------------------------------------
bobo, 2020
-------------------------------------------------*/#include <windows.h>
#include <windowsx.h>LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)
{static TCHAR szAppName[] = TEXT("pointerDemo");HWND hwnd;MSG msg;WNDCLASS wndclass;wndclass.style = CS_HREDRAW | CS_VREDRAW;wndclass.lpfnWndProc = WndProc;wndclass.cbClsExtra = 0;wndclass.cbWndExtra = 0;wndclass.hInstance = hInstance;wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);wndclass.lpszMenuName = NULL;wndclass.lpszClassName = szAppName;if (!RegisterClass(&wndclass)){MessageBox(NULL, TEXT("Program requires Windows NT!"),szAppName, MB_ICONERROR);return 0;}hwnd = CreateWindow(szAppName, TEXT("pointerDemo"),WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, CW_USEDEFAULT,CW_USEDEFAULT, CW_USEDEFAULT,NULL, NULL, hInstance, NULL);ShowWindow(hwnd, iCmdShow);UpdateWindow(hwnd);while (GetMessage(&msg, NULL, 0, 0)){TranslateMessage(&msg);DispatchMessage(&msg);}return msg.wParam;
}LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{HDC hdc;PAINTSTRUCT ps ;char buffer[65];int a = 100;char str[20] = "www.daye.com";switch (message){case WM_CREATE:return 0;case WM_SIZE:return 0;case WM_RBUTTONDOWN:return 0;case WM_LBUTTONDOWN:hdc = GetDC(hwnd); wsprintf(buffer,"%#X",&a);TextOut(hdc, 100, 20, buffer, 8);wsprintf(buffer,"%#X",str);TextOut(hdc, 200, 20, buffer, 8);return 0;case WM_PAINT:hdc = BeginPaint(hwnd, &ps);EndPaint(hwnd, &ps);return 0;case WM_DESTROY:PostQuitMessage(0);return 0;}return DefWindowProc(hwnd, message, wParam, lParam);
}
运行;
wsprintf(buffer,"%#X",&a);
TextOut(hdc, 100, 20, buffer, 8);
把a的地址按十六进制格式化到buffer;在坐标100、20,输出buffer的值,输出长度8;
控制台程序使用printf输出,可以自带格式化;
Win32 使用wsprintf格式化,使用TextOut输出;
控制台和Win32 API程序输出变量地址值相关推荐
- 【关于C语言输出变量地址】
关于C语言输出变量地址 最近闲着没事复习了一遍C语言,原本记得%p是用来输出地址的 然后试着使用以下代码输出. 注意:不想看过程的直接翻到最底下看结论就行了 int a = 32; printf(&q ...
- 关于MFC框架下的TextOut()函数输出变量的值
关于MFC框架下的TextOut()函数输出变量的值(int转String类型) 一.TextOut()参数介绍 BOOL TextOut ( //如果函数调用成功,返回TRUE,否则,返回FALSE ...
- 控制台调用win32 API 示例二则
一 控制台显示消息框 #include <stdio.h> #include <windows.h>int main(int argc, char* argv[]) {int ...
- win32获取其它进程变量地址存放的信息
本文说明已知其它进程变量所在地址,如何读取此进程变量地址所保存的信息Win32ReadMemTest的代码如下#include "stdafx.h" #include " ...
- python输出变量地址_Python——变量
笑虎:千行代码入门Pythonzhuanlan.zhihu.com 函数的参数www.liaoxuefeng.com Python学习之变量的作用域 - fireporsche - 博客园www ...
- C#调用win32 api程序实例
1.声明static extern 方法,使用DllImport特性 class MyClass{[DllImport("kernel32", SetLastError = tru ...
- python输出变量的值使用_如何使用python语言中的输入和输出打印对应的值
在python设计语言中,输入使用input()方法,而输出使用print()方法:其中,输出方法可以拼接变量,如字符串.数值类型的.下面利用几个实例说明python语言中的输入和输出的用法,操作如下 ...
- golang获取变量地址值和指针变量示例
package main import "fmt" // & * func main() {a:=100fmt.Println("a的地址:",& ...
- python输出变量的值使用_Python捕获任何异常,并使用变量值打印或记录回溯
当我用sys.excepthook捕获意外错误时 import sys import traceback def handleException(excType,excValue,trace): pr ...
最新文章
- Open3D KdTree建立、3种近邻搜索及结果可视化
- lucene查询语法,适用于ELk:kibana查询
- docker搭建 LNMP 环境
- python画出心形图-python画心型图案
- 物联网带着诚意扑面而来
- 可变大小区(Variable-Size Extents)
- html(3)标签(2)
- Angular 8 + Spring Boot 2.2:立即构建一个CRUD应用程序!
- [前端漫谈] 做一个四则计算器
- 好棒,测试妹子都能看懂的Jenkins Docker安装教程
- java 不能继承的类_java中不能继承的类有哪些?
- 团建之后,我想离职了
- Spring mvc @ RequestMapping
- C#面向对象2 静态类、静态成员的理解
- 相关矩阵的可视化及其新方法探究
- Hide()方法不生效
- 新手上路,Python黑帽子学习笔记从此开篇
- docker部署达梦流程记录(DM7和DM8)
- Android--›键盘表情切换的终极解决方案(已重构)
- Beaglebone Black – 智能家居控制系统 LAS - 插座组装