VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 831|回复: 8

[交流] 孙鑫第一课,谁帮我看看我哪里抄错了,,VS2010运行不了

[复制链接]
21_avatar_middle
在线会员 发表于 2016-5-30 19:21:56 | 显示全部楼层 |阅读模式
#include <Windows.h>
#include <stdio.h>

static LRESULT CALLBACK WinsunProc(
        HWND hWnd,
        UINT uMsg,
        WPARAM wParam,
        LPARAM lParam
        );
int WINAPI WinMain(HINSTANCE hInstance,
        HINSTANCE hPrevInstance,
        LPSTR lpCmdLine,
        int nCmdShow);
{
        WNDCLASS wndcls;
        wndcls.cbClsExtra=0;
        wndcls.cbWndExtra=0;
        wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
        wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);
        wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
        wndcls.hInstance=HINSTANCE;
        wndcls.lpfnWndProc=winsunproc;
        wndcls.lpszClassName="haiyang32";
        wndcls.lpszMenuName=NULL;
        wndcls.style=CS_HREDRAW|CS_VREDRAW;

        RegisterClass(&wndcls);

        HWND hwnd;
        hwnd=CreateWindow("haiyang32","实验",WS_OVERLAPPEDWINDOW,0,0,600,400,NULL,NULL,HINSTANCE,NULL);
       
        ShowWindow(hwnd,SW_SHOWNORMAL);
        UpdateWindow(hwnd);

        MSG msg;
        while(GetMessage(&msg,NULL,0,0))
        {
                TranslateMessage(&msg);
                DispatchMessage(&msg);
        }
        return 0;
}
static LRESULT CALLBACK WinsunProc(
        HWND hWnd,
        UINT uMsg,
        WPARAM wParam,
        LPARAM lParam
        );
{
        switch(umsg)
        {
        case WM_CHAR:
                char szChar[20];
                sprintf(szChar,"char is %d",WPARAM);
                MessageBox(HWND,szChar,"haiyang",0);
                break;
        case WM_LBUTTONDOWN:
                MessageBox(HWND,"mouse clicked","haiyang",0);
                HDC hdc;
                hdc=GetDC(HWND);
                TextOut(hdc,0,55,"laksdjlasjdgkoj",strlen("laksdjlasjdgkoj"));
                RELEASE(HWND,hdc);
                break;
        case WM_PAINT:
                HDC hDC;
                PAINTSTRUCT ps;
                hDC=BeginPaint(HWND,&ps);
                TextOut(hDC,0,0,"dddddddddd",strlen("dddddddddd"));
                EndPaint(HWND,&ps);
                break;
        case WM_CLOSE:
                if (IDYES==MessageBox(HWND,"结束?","haiyang",0))
                {
                        DestroyWindow(HWND);
                }
                break;
        case WM_DESTROY:
                PostQuitMessage(0);
                break;
        default:
                return DefWindowProc(HWND,umsg,WPARAM,LPARAM);
        }
        return 0;
}




上一篇:c项目源码大全
下一篇:授人以鱼不如授人以渔,找到一个干净无广告的百度云盘搜索站,特意共享出来
14_avatar_middle
online_supermod 发表于 2016-5-30 20:01:26 | 显示全部楼层
抄写错误还要帮忙看,这不现实把自己检查一下,还有提示什么错误自己看一下。
21_avatar_middle
ico_lz  楼主| 发表于 2016-5-30 20:44:20 | 显示全部楼层
venblue 发表于 2016-5-30 20:01
抄写错误还要帮忙看,这不现实把自己检查一下,还有提示什么错误自己看一下。

一、我感觉自己没有抄写错误。。编译器提示了两个内容:1缺少函数标题(是否是老式的形式表?)2“CreateWindowW”宏的实参不足(检查多遍)。我都检查了,一模一样,,不知何处错了。二、我很奇怪主函数的花括号外还有另外的花括号和语句。。新手,表示不太懂 。。
08_avatar_middle
在线会员 发表于 2016-5-30 21:29:20 | 显示全部楼层
仔细比对下吧,
14_avatar_middle
online_supermod 发表于 2016-5-30 23:18:04 | 显示全部楼层
  1. #include <Windows.h>
  2. #include <stdio.h>

  3. static LRESULT CALLBACK WinsunProc(
  4.         HWND hWnd,
  5.         UINT uMsg,
  6.         WPARAM wParam,
  7.         LPARAM lParam
  8.         );
  9. int WINAPI WinMain(HINSTANCE hInstance,
  10.         HINSTANCE hPrevInstance,
  11.         LPSTR lpCmdLine,
  12.         int nCmdShow)///这里多了一个分号
  13. {
  14.         WNDCLASS wndcls;
  15.         wndcls.cbClsExtra=0;
  16.         wndcls.cbWndExtra=0;
  17.         wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
  18.         wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);
  19.         wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
  20.         wndcls.hInstance=hInstance;//传递一个类型错误
  21.         wndcls.lpfnWndProc=WinsunProc;//winsunproc;错误写法
  22.         wndcls.lpszClassName="haiyang32";
  23.         wndcls.lpszMenuName=NULL;
  24.         wndcls.style=CS_HREDRAW|CS_VREDRAW;

  25.         RegisterClass(&wndcls);

  26.         HWND hwnd;
  27.         hwnd=CreateWindow("haiyang32","实验",WS_OVERLAPPEDWINDOW,0,0,600,400,NULL,NULL,hInstance,NULL);//WS_OVERLAPPEDWINDOW前面的逗号是错误的

  28.         ShowWindow(hwnd,SW_SHOWNORMAL);
  29.         UpdateWindow(hwnd);

  30.         MSG msg;
  31.         while(GetMessage(&msg,NULL,0,0))
  32.         {
  33.                 TranslateMessage(&msg);
  34.                 DispatchMessage(&msg);
  35.         }
  36.         return 0;
  37. }
  38. static LRESULT CALLBACK WinsunProc(
  39.         HWND hWnd,
  40.         UINT uMsg,
  41.         WPARAM wParam,
  42.         LPARAM lParam
  43.         )//多了一个分号
  44. {
  45.         switch(uMsg)//为声明标识符,与参数uMsg大小写不符
  46.         {
  47.         case WM_CHAR:
  48.                 char szChar[20];
  49.                 sprintf(szChar,"char is %d",wParam);
  50.                 MessageBox(hWnd,szChar,"haiyang",0);//大小写不符
  51.                 break;
  52.         case WM_LBUTTONDOWN:
  53.                 MessageBox(hWnd,"mouse clicked","haiyang",0);//大小写不符
  54.                 HDC hdc;
  55.                 hdc=GetDC(hWnd);//大小写不符
  56.                 TextOut(hdc,0,55,"laksdjlasjdgkoj",strlen("laksdjlasjdgkoj"));//大小写不符
  57.                 //RELEASE(hWnd,hdc);//大小写不符
  58.                 break;
  59.         case WM_PAINT:
  60.                 HDC hDC;
  61.                 PAINTSTRUCT ps;
  62.                 hDC=BeginPaint(hWnd,&ps);//大小写不符
  63.                 TextOut(hDC,0,0,"dddddddddd",strlen("dddddddddd"));
  64.                 EndPaint(hWnd,&ps);//大小写不符
  65.                 break;
  66.         case WM_CLOSE:
  67.                 if (MessageBox(hWnd,"结束?","haiyang",MB_YESNO)==IDYES)//大小写不符,还有这里之前写的会导致程序关不掉瞎搞
  68.                 {
  69.                         DestroyWindow(hWnd);//大小写不符
  70.                 }
  71.                 break;
  72.         case WM_DESTROY:
  73.                 PostQuitMessage(0);
  74.                 break;
  75.         default:
  76.                 return DefWindowProc(hWnd,uMsg,wParam,lParam);//大小写不符
  77.         }
  78.         return 0;
  79. }
复制代码


改了错误的地方也指出来了,错的太离谱了
14_avatar_middle
online_supermod 发表于 2016-5-30 23:18:23 | 显示全部楼层
好好对比一下吧
21_avatar_middle
ico_lz  楼主| 发表于 2016-5-31 16:18:05 | 显示全部楼层
venblue 发表于 2016-5-30 23:18
好好对比一下吧

嗯 谢谢你  大小写 编程助手提示的,我以为是大小写都一样
80_avatar_middle
在线会员 发表于 2016-6-1 05:11:50 | 显示全部楼层
学习了孙鑫第一课,谁帮我看看我哪里抄错了,,VS2010运行不了
21_avatar_middle
ico_lz  楼主| 发表于 2016-6-1 09:43:05 | 显示全部楼层

哈哈 我还运行不了 总感觉少了些什么东西  把他们自己的东西拷贝一遍后也还运行不了。。。
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-3-26 23:29

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表