C 语言开发初涉-01 简单学习
尝试用C语言写windows程序:
简单的计算器 1.0版,仅用来熟悉C 开发windows的一些语法和语句用法
#include "stdafx.h"
#include <windows.h>
#include <windowsx.h>
#include <stdio.h>
#include <stdlib.h>
#include <typeinfo.h>
#include "resource.h"
#include "MainDlg.h" /*
http://www.cnblogs.com/daomul/
*/
BOOL WINAPI Main_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch(uMsg)
{
HANDLE_MSG(hWnd, WM_INITDIALOG, Main_OnInitDialog);
HANDLE_MSG(hWnd, WM_COMMAND, Main_OnCommand);
HANDLE_MSG(hWnd,WM_CLOSE, Main_OnClose);
} return FALSE;
} BOOL Main_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam)
{
return TRUE;
}
/******************** 解决输入判断****************************** */
BOOL IsNum(TCHAR* nameOne,TCHAR* nameTwo)
{
TCHAR TempOne[],TempTwo[];
int temp1=atoi(nameOne);
int temp2=atoi(nameTwo);//先将输入的字符串转化为整形 wsprintf(TempOne,"%d",temp1);
wsprintf(TempTwo,"%d",temp2);//再将整形转化为字符型,如果是数字,则整形月字符型是相同的 if(strcmp(TempOne,nameOne)!=)
{ //MessageBox(hwnd,TEXT("第一个数字输入不合法!请重新输入!"),TEXT("ok"),MB_OK|MB_ICONERROR);
return FALSE;
}
if(strcmp(TempTwo,nameTwo)!=)
{
//MessageBox(hwnd,TEXT("第二个数字输入不合法!请重新输入!"),TEXT(""),MB_OK|MB_ICONERROR);
return FALSE; }
return TRUE;
}
/******************** 解决输入判断结束****************************** */ void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
{
switch(id)
{
case IDC_OK:
{
TCHAR nameOne[],nameTwo[];//解决中文编码问题
GetDlgItemText(hwnd,IDC_INPUTONE,nameOne,sizeof(nameOne));
GetDlgItemText(hwnd,IDC_INPUTTWO,nameTwo,sizeof(nameTwo)); /******************** 解决输入判断****************************** */ if(!IsNum(nameOne,nameTwo))
{
MessageBox(hwnd,TEXT("数字输入不合法!请重新输入!"),TEXT("error"),MB_OK|MB_ICONERROR);
return;
} /******************** 解决输入判断结束****************************** */ TCHAR str[];
int result;
result=atoi(nameOne)+atoi(nameTwo);//加头文件#include<stdlib.h> itoa(result,str,);//同样可以用来转化类型(可以转化进制) SetDlgItemText(hwnd,IDC_RESULT,str); //wsprintf(msg,"%d",result);//要添加 #include <stdio.h>头文件 相当于拼接 //MessageBox(hwnd,msg,TEXT("ok"),MB_OK);
}
break; case IDC_CHANGE:
{
/******************** 转化为二进制****************************** */
TCHAR result[];
GetDlgItemText(hwnd,IDC_RESULT,result,sizeof(result));
if(NULL==result)
{
MessageBox(hwnd,TEXT("请先输入数字!"),TEXT(" "),MB_OK);
}
else
{
TCHAR ChangeResult[];
itoa(atoi(result),ChangeResult,);
SetDlgItemText(hwnd,IDC_RESULT,ChangeResult);
}
}
break; default:
break;
}
} void Main_OnClose(HWND hwnd)
{
EndDialog(hwnd, );
}
C 语言开发初涉-01 简单学习的更多相关文章
- ESP8266 LUA脚本语言开发: 准备工作-为方便学习(统一使用本人编译的固件)
前言 注:为了咱后期统一起来,所以统一使用我编译的LUA固件 一,固件打开了SmartConfig / AirKiss 配网功能 二,打开了SSL 三,其它模块化程序 刷空固件 一,为了保证固件是干净 ...
- 实验四 Linux系统C语言开发环境学习
项目 内容 这个作业属于哪个课程 Linux系统与应用 这个作业的要求在哪里 作业要求链接 学号-姓名 17041428-朱槐健 作业学习目标 1.Linux系统下C语言开发环境搭建 2.学习Linu ...
- 使用Sublime text 3打造一个小巧但强大的Go语言开发IDE
版权声明:欢迎转载,转载请注明出处! https://blog.csdn.net/iTaacy/article/details/76716049 使用Sublime text 3打造一个小巧但强大的G ...
- unity3D用什么语言开发好?
unity3D用什么语言开发好? 一.总结 一句话总结:选c# 同时U3D团队也会把支持的重心转移到C#,也就是说文档和示例以及社区支持的重心都在C#,C#的文档会是最完善的,C#的代码实例会是最详细 ...
- Linux系统c语言开发环境
项目 内容 这个作业属于哪个课程 班级地址 这个作业要求在哪里 作业要求地址 学号-姓名 17041506-张政 学习目标 Linux系统下C语言开发环境搭建,学习Linux系统环境C语言开发过程 L ...
- Tinyhttpd - 超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),附带一个简单的Client(Qt也有很多第三方HTTP类)
- 2. Tinyhttpd tinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),附带一个简单的Client,可以通过阅读这段代码理解一个 Htt ...
- 实验四:Linux系统C语言开发环境学习
项目 内容 这个作业属于哪个课程 班级课程主页链接 这个作业的要求在哪里 作业要求 学号-姓名 17043133-木腾飞 作业学习要求 1.学习Linux系统中如何查看帮助文档:2.在Linux系统中 ...
- C语言开发CGI程序的简单例子
这年头用C语言开发cgi的已经不多,大多数的web程序都使用java.php.python等这些语言了. 但是本文将做一些简单的cgi实例. 首先配置环境 #这里是使用的apache AddHandl ...
- 个人 WPF+EF(DBFirst) 简单应用开发习惯及EF学习测试(备忘) -- 2
接上篇:个人 WPF+EF(DBFirst) 简单应用开发习惯及EF学习测试(备忘) -- 1 Step1 在主程序中设置连接数据库 从Model类库的 App.Config 把数据库字符串拷贝出来, ...
随机推荐
- 解决Enter键与input 、a标签触发的事件的冲突
无论是 <button type="button" onclick="console.log('123');">123</button> ...
- 硬盘Raid
一.raid什么意思? RAID是“Redundant Array of Independent Disk”的缩写,raid什么意思了?说白了,中文翻译过来通俗的讲就是磁盘阵列的意思,也就是说RAID ...
- C++14系列(2):C/C++的时间函数
C++笔记開始 为了好好研究下C++14.顺便复习下曾经的C++知识.搞了个git(不断完好中): https://github.com/rododo/cpp14examples.git 里面会慢慢封 ...
- linux 终端 查看上一页
问题描述: 我在终端中使用”dpkg -l”命令显示主机中安装的软件时,发现内容很多,而当命令执行完毕后,只显示终端最后一屏的内容.前面的都无法查看,这个是很让人憋屈的.下面就这一个问题说一下我的解决 ...
- js基本知识1
Javascript 作用 1. 网页特效 2. 用户交互 3. 表单验证 Js 就是可以用来控制 结构 和 样式 . 1.2 体验js 认识常用的三个输出语句. 都属于 js 内置对象 . 大家买手 ...
- SNP密度分布模式
1. window=100k,step=2k 统计每个window的snp密度,然后用mixtools的normalmixEM(两个组分的混合模型)统计snp的分布模式. R command: lib ...
- git学习(二):git config命令
不同的git config操作不同的参数文件 git config --global // 配置用户目录下的.gitconfig那文件 git config --system // 配置系统级配置文件 ...
- am335x 打开内部 RTC
AM335X 打开内部 RTC 过程记录. kernel version: 3.2.0 先在 make menuconfig 里面打开内部RTC的配置: make menuconfig Device ...
- xeno 实时性能测试 系统时钟1秒100个tick再测试
root@sama5d3-linux:/usr/bin ./latency -t0 -T25 -p100 == Sampling period: ...
- PHP——投票
要求: 选择第一个页面的复选框值,点击提交则提交数据,点击查看结果在同一页面覆盖显示结果的投票人数,百分比和进度条,点击返回,返回第一页面 数据库为 投票 表格为diaoyanxx 表格内容为: zh ...