Windows程序设计入门-hello, world

20011010wo 发表于 2017-2-6 17:07:00
#include <Windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine,int nCmdShow)
{
MessageBoxA(0, "hello, world", " " ,MB_ICONINFORMATION|MB_OK);
return 0;
}

将文件保存至demo1.cpp文件,然后打开VS的开发人员命令提示符,输入:
cl demo1.cpp /link kernel32.lib gdi32.lib user32.lib
然后执行demo1.exe——恭喜,你制作完成了一个windows版的hello, world!

Hashimoto 发表于 2017-2-7 01:11:33
代码是什么意思呢?可否从头讲起编程?
20011010wo 发表于 2017-2-7 08:51:41
Hashimoto 发表于 2017-2-7 01:11
代码是什么意思呢?可否从头讲起编程?


从头讲起有点多
Hashimoto 发表于 2017-2-9 01:16:13

那就多发点帖子慢慢讲,我就决定从你这学学了
viploser 发表于 2017-2-12 00:58:58
我觉得应该说明一下语言吧

个人喜欢c 纯c 但其实并不好用

c的话源码
  1. #include <stdio.h>
    int main()
    {
    printf("Hello World!\n");
    }


当然 如果你喜欢 也可以写成这个样子
  1. #include<stdio.h>
    main(){
    int x=0,y[14],*z=&y;
    *(z++)=0x48;
    *(z++)=y[x++]+0x1D;
    *(z++)=y[x++]+0x07;
    *(z++)=y[x++]+0x00;
    *(z++)=y[x++]+0x03;
    *(z++)=y[x++]-0x43;
    *(z++)=y[x++]-0x0C;
    *(z++)=y[x++]+0x57;
    *(z++)=y[x++]-0x08;
    *(z++)=y[x++]+0x03;
    *(z++)=y[x++]-0x06;
    *(z++)=y[x++]-0x08;
    *(z++)=y[x++]-0x43;
    *(z++)=y[x]-0x21;
    x=*(--z);
    while(y[x]!=NULL)
    putchar(y[x++]);
    }


这个样子
  1. int n[]={0x48, 0x65,0x6C,0x6C, 0x6F,0x2C,0x20, 0x77,0x6F,0x72, 0x6C,0x64,0x21, 0x0A,0x00},*m=n;
    main(n)
    {putchar (*m)!='\0'?main (m++):exit(n++);}


后两段一样的
20011010wo 发表于 2017-2-12 09:53:37
viploser 发表于 2017-2-12 00:58
我觉得应该说明一下语言吧

个人喜欢c 纯c 但其实并不好用

其实我说的是Windows程序。你看我的入口点是winmain
来源: 萝卜头IT论坛 查看完整版本