既然Android逆向是杂学,而且c语言又是我的本命学科,那么学习一下还是可以的,但是肯定不会占很多的时间,也就是一心三用,然后进行一个简单的博客说明。
vs 2013
推荐先去学习c语言基础
不勾选安全周期,选择空项目
添加-新建项-cpp文件
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
return 0;
}
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL, "LOVE猪猪", "LOVE", MB_OK);
return 0;
}
我们添加了一行代码。这个代码就是显示我们框框的代码。但是会因为字符问题出错,所以我们要进行修改。
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL, TEXT("LOVE猪猪"), TEXT("LOVE"), MB_OK);
return 0;
}
使用text把我们需要输入的字符包裹起来就可以了。TEXT是一个宏,当字符串中有中文的时候用TEXT包裹起来。
MessageBox(NULL, TEXT("LOVE猪猪"), TEXT("LOVE"), MB_OK);
这是我们的主要代码 ,这里有四个参数,第一个参数传入NULL,第二个参数就是显示内容,第三个参数就是标题,第四个参数就是样式。
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL, TEXT("LOVE猪猪"), TEXT("LOVE"),MB_OKCANCEL);
return 0;
}
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL, TEXT("LOVE猪猪"), TEXT("LOVE"),MB_ABORTRETRYIGNORE);
return 0;
}
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL, TEXT("LOVE猪猪"), TEXT("LOVE"),MB_ICONERROR);
return 0;
}
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL, TEXT("LOVE猪猪"), TEXT("LOVE"),MB_OKCANCEL|MB_ICONQUESTION);
return 0;
}
还有很多种组合方式,可以进行自己尝试。
在c语言中“|”的含义就是“或”的意思。
简单的说就是只要有1就为1,只有同为0的时候才为0。
首先来看一张图。
#define MB_OK 0x00000000L
#define MB_ICONHAND 0x00000010L
这两个进行或运算,也就是0x00000000和0x00000010进行或运算
使用软件进行转化:
00000和10000就是10000,所以会保留两个特征。
其他同理
(1)方便使用者,enter选择默认按钮
(2)防止误操作,默认按钮是最优选
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL, TEXT("LOVE猪猪"), TEXT("LOVE"),MB_OKCANCEL|MB_ICONQUESTION|MB_DEFBUTTON2);
return 0;
}
这里可以通过指定BUTTON1,或者BUTTON2,BUTTON3,或者BUTTON4。
展示:
首先来看这张图,是关于返回值的
#include
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevinstance, PSTR szCmdLine, int iCmdShow)
{
int r=MessageBox(NULL, TEXT("你是猪吗"), TEXT("LOVE"),MB_OKCANCEL|MB_ICONQUESTION|MB_DEFBUTTON2);
if (r == IDOK)
{
MessageBox(NULL, TEXT("看来你很有自知之明嘛"), TEXT("LOVE"), MB_OK);
}
else
{
MessageBox(NULL, TEXT("想否认也没有办法,你还是猪"), TEXT("LOVE"), MB_OK);
}
return 0;
}
这个就是简单的一个恶搞demo,当然如果写成其他的也是可以的。这个就看个人的发挥了。
以上就是c语言实战开发中的简单应用了,感觉下了一下午,但是收获还是有很多的。
有兴趣还可以看看其他系列