C语言如何让他弹出一个提示对话框

lang14 2012-03-15 02:49:38
我在VC6里面写的程序,不过想调试的话,设置断点调不了,但是我想在程序中执行到某个地方的时候弹出一个对话框来停止,请问怎么解决???
...全文
2058 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
W1nds 2012-03-15
  • 打赏
  • 举报
回复
#include <windows.h>

MessageBox(NULL,_T("TEST"),_T("OK"),MB_OK);
用API呗
lang14 2012-03-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zgl7903 的回复:]
WINDOWS程序MessagBox

WINDOWS或控制台 assert


C/C++ code

// crt_assert.c
// compile with: /c
#include <stdio.h>
#include <assert.h>
#include <string.h>

void analyze_string( char *string ); ……
[/Quote]
原来MessageBox()也可以是C语言,一直认为是C++的呢,,,学习了
zgl7903 2012-03-15
  • 打赏
  • 举报
回复
WINDOWS程序MessagBox

WINDOWS或控制台 assert


// crt_assert.c
// compile with: /c
#include <stdio.h>
#include <assert.h>
#include <string.h>

void analyze_string( char *string ); // Prototype

int main( void )
{
char test1[] = "abc", *test2 = NULL, test3[] = "";

printf ( "Analyzing string '%s'\n", test1 ); fflush( stdout );
analyze_string( test1 );
printf ( "Analyzing string '%s'\n", test2 ); fflush( stdout );
analyze_string( test2 );
printf ( "Analyzing string '%s'\n", test3 ); fflush( stdout );
analyze_string( test3 );
}

// Tests a string to see if it is NULL,
// empty, or longer than 0 characters.
void analyze_string( char * string )
{
assert( string != NULL ); // Cannot be NULL
assert( *string != '\0' ); // Cannot be empty
assert( strlen( string ) > 2 ); // Length must exceed 2
}

秀小川 2012-03-15
  • 打赏
  • 举报
回复
C语言弹出对话框不知道怎么实现!VC的话,#include <afxwin.h> 然后使用afxmessagebox就可以弹出对话框!
(1)桌面万年历应用程序主界面可以显示公历日期、农历日期、星期、当前时间、干支年月、生肖图像,这些信息随着日期的变化而动态改变; (2)点击右键菜单中的日历按钮可以显示当月的日历,日历包括所在的公历年月、农历年、生肖图片,同时突出标记今日,同时按年加1、年减1、月加1、月减1按钮可以实现年和月的切换,按换皮肤按钮可以更换皮肤,共有15种皮肤循环更换,按添加纪念日按钮可以添加纪念日,按显示纪念日按钮可以显示已添加的纪念日,在年、月、日的三个文本框中填写要查找的日期,再按查找按钮可以突出标记要查找的日期,按今日按钮,日历界面会回到当月界面,同时突出标记今日。 (3)点击右键菜单中的换皮肤按钮可以更换时钟表盘的皮肤,共有4种皮肤,循环更换。 (4)点击右键菜单中的设置闹钟铃声按钮可以设置闹钟铃声,共有6种铃声可供选择。 (5)点击右键菜单中的闹钟按钮再按设置按钮可以设置闹钟,在弹出对话框中填写闹铃时间即可,如果在设置好闹钟之后再按关闭按钮则将闹铃给关闭,则闹铃无效。 (6)点击右键菜单中的整点报时按钮再按开启按钮可以实现整点报时的功能。 (7)点击右键菜单中的倒计时按钮,将实现1分钟倒计时,时间到后会弹出对话框提示
第一节板书: 1、MingW就是一个C/C++的编译器。 编译器和编辑器:编译器其实就是把源代码编译成目标代码的程序;Tc就是一个编辑器:能在里边敲代码,高亮显示,自动提示。 2、 C-Free里边可以运行、也可以调试。设置断点很简单,就是在要设置断点的代码行前边点击一下鼠标,有了一个红色小点就说明设置好了断点。 3、控制台程序的入口是main,Win32程序的入口是WinMain 4、以前用TuborC的同学会问“什么叫工程?”。在以前大家用TurboC写的程序一般也就是一个文件,但是用C语言写大程序的时候不可能把所有的代码都写在一个文件中,肯定要写很多文件。“工程(Project)”就是这些问题的一个集合。)在“工程名”中写入你为这个工程取的名字,最好有一定意义。 5、Windows程序的骨干代码: #include int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { return 0 ; } 6、 向Windows的世界问好 (1)MessageBox(NULL,TEXT("世界你好"),TEXT("问好"),MB_OK); 第一个参数暂时不讲;第二个是正文;第三个是标题(Caption);第四个是类型。 MB_OK就是表示有一个OK按钮【确定】) TEXT是一个宏,当字符串中有中文的时候最好用TEXT来包围这个字符串,虽然不使用TEXT在VC6中没问题,但是在VC7中有问题,而且微软也建议使用TEXT宏,因此在涉及到中文的场合要使用它。他的作用就是把中文转化成不会乱码的格式。(暂时这么认为)。_T("问好"),其实_T只是TEXT的一个缩写而已。而且_T在有的低版本里不识别。TEXT()低版本也识别。 换个样子: MessageBox(NULL, TEXT("世界你好"), TEXT("你好"),MB_OKCANCEL); 可从设置希望在对话框中显示的按钮: #define MB_OK 0x00000000L #define MB_OKCANCEL 0x00000001L #define MB_ABORTRETRYIGNORE 0x00000002L #define MB_YESNOCANCEL 0x00000003L #define MB_YESNO 0x00000004L #define MB_RETRYCANCEL 0x00000005L 也可以设置对话框中显示的图标: #define MB_ICONHAND 0x00000010L #define MB_ICONQUESTION 0x00000020L #define MB_ICONEXCLAMATION 0x00000030L #define MB_ICONASTERISK 0x00000040L 比如:MessageBox(NULL, TEXT("世界你好") ,TEXT("你好"), MB_ICONQUESTION); (2)可是如果我想显示“确定、取消”按钮的时候同时使用问号图标呢? MessageBox(NULL, TEXT("世界你好"), TEXT("你好"),MB_OKCANCEL| MB_ICONQUESTION); MessageBox(NULL, TEXT("世界你好"), TEXT("你好"), MB_ABORTRETRYIGNORE | define MB_ICONEXCLAMATION); (3)思考: 到这一步如果你只是在背诵“第一组和第二组中间放一个竖线就可以实现两种效果的组合形式”,那么你未来只会成为一个代码工人。我们要思考一下其背后的原理。 首先说“|”是什么意思?“|”是位运算里的“或”运算,只有对应的两个二进位有一位为1时,结果位才为1 ,否则为0。MB_OK、MB_OKCANCEL等的低四位不同,但是高位永远为0;MB_ICONHAND、MB_ICONQUESTION等的低5至第8位不同,而其他位永远为0。这样“MB_OK、MB_OKCANCEL”组的数值与“MB_ICONHAND、MB_ICONQUESTION”组的数值进行或运算后能分别保留各自的部分,也就是在结果值中同时体现两组的取值。 拿到1000010以后怎么判断是不是和0000010或运算来的? 1000010 0000010 与& ====== 0000010 1000011 0000010 & ======= 000

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧