#include <Windows.h>
#include <tchar.h>
#include <math.h>
typedef struct Time
{
int hour, min, sec;
}TimeStructure;
BOOLEAN InitWindowClass(HINSTANCE hInstance, int nCmdShow);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
void AdjustTime(TimeStructure *x);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
MSG msg;
if (!InitWindowClass(hInstance, nCmdShow))
{
MessageBox(NULL, L"创建窗口失败!", _T("创建窗口"), NULL);
return ;
}
while (GetMessage(&msg, NULL, , ))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return(int)msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HDC hDC;
PAINTSTRUCT ps;
HBRUSH hBrush;
HPEN hPen;
RECT clientRect;
static TimeStructure x;
float sita = ;
int xOrg, yOrg, rSec, rMin, rHour, rClock, xBegin, xEnd, yBegin, yEnd;
switch (message)
{
case WM_CREATE: //创建窗口时,响应的消息
SetTimer(hWnd, , , NULL); //设置定时器
break;
case WM_PAINT:
x.sec++;
AdjustTime(&x);
hDC = BeginPaint(hWnd, &ps);
GetClientRect(hWnd, &clientRect); //获得用户区的尺寸
hPen = (HPEN)GetStockObject(BLACK_PEN); //设置画笔为系统预定义的黑色画笔
hBrush = CreateSolidBrush(RGB(, , )); //创建粉红色的单色画刷
SelectObject(hDC, hPen); //选择画笔
SelectObject(hDC, hBrush); //选择画刷
xOrg = (clientRect.left + clientRect.right) / ;
yOrg = (clientRect.top + clientRect.bottom) / ; //计算屏幕中心的坐标,它也是时钟的中心
rClock = min(xOrg, yOrg) - ; //钟表的半径
rSec = rClock * / ; //秒针的半径
rMin = rClock * / ; //分针的半径
rHour = rClock * / ; //时针的半径
Ellipse(hDC, xOrg - rClock, yOrg - rClock, xOrg + rClock, yOrg + rClock);//绘制表面圆
for (int i = ; i < ; i++) //绘制表面的刻度
{
if (i % ) //绘制表面表面的整点刻度
{
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
xBegin = xOrg + rClock*sin( * 3.1415926*i / );
yBegin = yOrg + rClock*cos( * 3.1415926*i / );
MoveToEx(hDC, xBegin, yBegin, NULL);
xEnd = xOrg + (rClock - )*sin( * 3.1415926*i / );
yEnd = yOrg + (rClock - )*cos( * 3.1415926*i / ); }
else //绘制表面表面的非整点刻度
{
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
xBegin = xOrg + rClock*sin( * 3.1415926*i / );
yBegin = yOrg + rClock*cos( * 3.1415926*i / );
MoveToEx(hDC, xBegin, yBegin, NULL);
xEnd = xOrg + (rClock - )*sin( * 3.1415926*i / );
yEnd = yOrg + (rClock - )*cos( * 3.1415926*i / );
}
LineTo(hDC, xEnd, yEnd);
DeleteObject(hPen);
}
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
sita = * 3.1415926*x.sec / ;
xBegin = xOrg + (int)(rSec*sin(sita));
yBegin = yOrg - (int)(rSec*cos(sita)); //秒针的起点,它的位置在秒针的最末端
xEnd = xOrg + (int)(rClock*sin(sita + 3.1415926) / );
yEnd = yOrg - (int)(rClock*cos(sita + 3.1415926) / );//秒针的终点,它的位置在秒针的反方向的长度为秒针的1/8
MoveToEx(hDC, xBegin, yBegin, NULL);
LineTo(hDC, xEnd, yEnd); //绘制秒针
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
sita = * 3.1415926*x.min / ;
xBegin = xOrg + (int)(rMin*sin(sita));
yBegin = yOrg - (int)(rMin*cos(sita)); //分针的起点
xEnd = xOrg + (int)(rClock*sin(sita + 3.1415926) / );
yEnd = yOrg - (int)(rClock*cos(sita + 3.1415926) / );//分针的终点
MoveToEx(hDC, xBegin, yBegin, NULL);
LineTo(hDC, xEnd, yEnd); //绘制分针
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
sita = * 3.1415926*x.hour / ;
xBegin = xOrg + (int)(rHour*sin(sita));
yBegin = yOrg - (int)(rHour*cos(sita));
xEnd = xOrg + (int)(rClock*sin(sita + 3.1415926) / );
yEnd = yOrg - (int)(rClock*cos(sita + 3.1415926) / );
MoveToEx(hDC, xBegin, yBegin, NULL);
LineTo(hDC, xEnd, yEnd); //绘制时针
DeleteObject(hPen);
DeleteObject(hBrush);
EndPaint(hWnd, &ps); //结束绘图
break;
case WM_TIMER: //响应定时器发出的定时消息
if (wParam == ) //判断是否是设置的定时器发出的消息
InvalidateRect(hWnd, NULL, true); //刷新屏幕
break;
case WM_SIZE: //窗口尺寸改变时,刷新窗口
InvalidateRect(hWnd, NULL, true);
break;
case WM_DESTROY:
PostQuitMessage(); //调用PostQuitMessage发出WM_QUIT消息
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam); //默认时采用系统消息默认处理函数
break;
}
return ;
}
void AdjustTime(TimeStructure *x)
{
if (x->sec == )
{
x->sec = ;
x->min++;
if (x->min == )
{
x->min = ;
x->hour++;
if (x->hour == )
x->hour = ;
}
}
}
BOOLEAN InitWindowClass(HINSTANCE hInstance, int nCmdShow)
{
WNDCLASSEX wcex;
HWND hWnd;
TCHAR szWindowClass[] = L"窗口示例";
TCHAR szTitle[] = L"模拟时钟";
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = ;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = ;
wcex.cbWndExtra = ;
wcex.hInstance = hInstance;
wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wcex.lpszMenuName = NULL;
wcex.lpszClassName = szWindowClass;
wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
if (!RegisterClassEx(&wcex))
return FALSE;
hWnd = CreateWindow(
szWindowClass,
szTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL
);
if (!hWnd)
return FALSE;
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
return TRUE;
}

aaarticlea/png;base64,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" alt="" />

界面太丑了,后来代码又被我改了:
 #include <Windows.h>
#include <tchar.h>
#include <math.h>
typedef struct Time
{
int hour, min, sec;
}TimeStructure;
BOOLEAN InitWindowClass(HINSTANCE hInstance, int nCmdShow);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
HFONT CreateMyFont(TCHAR * fontName, int height, int width);
void AdjustTime(TimeStructure *x);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
MSG msg;
if (!InitWindowClass(hInstance, nCmdShow))
{
MessageBox(NULL, L"创建窗口失败!", _T("创建窗口"), NULL);
return ;
}
while (GetMessage(&msg, NULL, , ))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return(int)msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HDC hDC;
PAINTSTRUCT ps;
HFONT font;
HBRUSH hBrush;
HPEN hPen;
LPCTSTR num[] = { L"", L"", L"", L"", L"", L"", L"", L"", L"", L"", L"", L"" };
RECT clientRect;
SYSTEMTIME sys;
GetLocalTime(&sys);
static TimeStructure x = { sys.wHour, sys.wMinute, sys.wSecond };//获取系统当前时间
float sita = ;
int xOrg, yOrg, rSec, rMin, rHour, rClock, xBegin, xEnd, yBegin, yEnd;
switch (message)
{
case WM_CREATE: //创建窗口时,响应的消息
SetTimer(hWnd, , , NULL); //设置定时器
break;
case WM_PAINT:
x.sec++;
AdjustTime(&x);
hDC = BeginPaint(hWnd, &ps);
GetClientRect(hWnd, &clientRect); //获得用户区的尺寸
hPen = (HPEN)GetStockObject(BLACK_PEN); //设置画笔为系统预定义的黑色画笔
SelectObject(hDC, hPen); //选择画笔
xOrg = (clientRect.left + clientRect.right) / ;
yOrg = (clientRect.top + clientRect.bottom) / ; //计算屏幕中心的坐标,它也是时钟的中心
rClock = min(xOrg, yOrg) - ; //钟表的半径
rSec = rClock * / ; //秒针的半径
rMin = rClock * / ; //分针的半径
rHour = rClock * / ; //时针的半径
hBrush = CreateSolidBrush(RGB(, , )); //创建黑色的单色画刷
SelectObject(hDC, hBrush); //选择画刷
Ellipse(hDC, xOrg - rClock - , yOrg - rClock - , xOrg + rClock + , yOrg + rClock + );
hBrush = CreateSolidBrush(RGB(, , )); //创建长春花色的单色画刷
SelectObject(hDC, hBrush); //选择画刷
Ellipse(hDC, xOrg - rClock - , yOrg - rClock - , xOrg + rClock + , yOrg + rClock + );
for (int i = ; i < ; i++) //绘制表面的刻度
{
if (i % ) //绘制表面表面的整点刻度
{
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
xBegin = xOrg + rClock*sin( * 3.1415926*i / );
yBegin = yOrg + rClock*cos( * 3.1415926*i / );
MoveToEx(hDC, xBegin, yBegin, NULL);
xEnd = xOrg + (rClock - )*sin( * 3.1415926*i / );
yEnd = yOrg + (rClock - )*cos( * 3.1415926*i / );
}
else //绘制表面表面的非整点刻度
{
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
xBegin = xOrg + rClock*sin( * 3.1415926*i / );
yBegin = yOrg + rClock*cos( * 3.1415926*i / );
MoveToEx(hDC, xBegin, yBegin, NULL);
xEnd = xOrg + (rClock - )*sin( * 3.1415926*i / );
yEnd = yOrg + (rClock - )*cos( * 3.1415926*i / );
}
LineTo(hDC, xEnd, yEnd);
if (i % == )
{
int j = - i / ;
LPCTSTR outInfo = num[j % ];
font = CreateMyFont(L"楷体_GB2312", , );
SelectObject(hDC, font);
SetBkColor(hDC, RGB(, , ));
if (j % / == )
TextOut(hDC, xOrg + (rClock - )*sin( * 3.1415926*i / ) - , yOrg + (rClock - )*cos( * 3.1415926*i / ) - , outInfo, );
else
TextOut(hDC, xOrg + (rClock - )*sin( * 3.1415926*i / ) - , yOrg + (rClock - )*cos( * 3.1415926*i / ) - , outInfo, );
DeleteObject(font);
}
DeleteObject(hPen);
}
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
sita = * 3.1415926*x.sec / ;
xBegin = xOrg + (int)(rSec*sin(sita));
yBegin = yOrg - (int)(rSec*cos(sita)); //秒针的起点,它的位置在秒针的最末端
xEnd = xOrg + (int)(rClock*sin(sita + 3.1415926) / );
yEnd = yOrg - (int)(rClock*cos(sita + 3.1415926) / );//秒针的终点,它的位置在秒针的反方向的长度为秒针的1/8
MoveToEx(hDC, xBegin, yBegin, NULL);
LineTo(hDC, xEnd, yEnd); //绘制秒针
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
sita = * 3.1415926*x.min / ;
xBegin = xOrg + (int)(rMin*sin(sita));
yBegin = yOrg - (int)(rMin*cos(sita)); //分针的起点
xEnd = xOrg + (int)(rClock*sin(sita + 3.1415926) / );
yEnd = yOrg - (int)(rClock*cos(sita + 3.1415926) / );//分针的终点
MoveToEx(hDC, xBegin, yBegin, NULL);
LineTo(hDC, xEnd, yEnd); //绘制分针
hPen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hDC, hPen);
sita = * 3.1415926*x.hour / ;
xBegin = xOrg + (int)(rHour*sin(sita));
yBegin = yOrg - (int)(rHour*cos(sita));
xEnd = xOrg + (int)(rClock*sin(sita + 3.1415926) / );
yEnd = yOrg - (int)(rClock*cos(sita + 3.1415926) / );
MoveToEx(hDC, xBegin, yBegin, NULL);
LineTo(hDC, xEnd, yEnd); //绘制时针
DeleteObject(hPen);
DeleteObject(hBrush);
EndPaint(hWnd, &ps); //结束绘图
break;
case WM_TIMER: //响应定时器发出的定时消息
if (wParam == ) //判断是否是设置的定时器发出的消息
InvalidateRect(hWnd, NULL, true); //刷新屏幕
break;
case WM_SIZE: //窗口尺寸改变时,刷新窗口
x = { sys.wHour, sys.wMinute, sys.wSecond };
InvalidateRect(hWnd, NULL, true);
break;
case WM_DESTROY:
PostQuitMessage(); //调用PostQuitMessage发出WM_QUIT消息
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam); //默认时采用系统消息默认处理函数
break;
}
return ;
}
void AdjustTime(TimeStructure *x)
{
if (x->sec == )
{
x->sec = ;
x->min++;
if (x->min == )
{
x->min = ;
x->hour++;
if (x->hour == )
x->hour = ;
}
}
}
HFONT CreateMyFont(TCHAR * fontName, int height, int width)
{
return CreateFont(
height,
width,
,
,
FW_HEAVY,
,
,
,
GB2312_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
DEFAULT_PITCH | FF_DONTCARE,
fontName
);
}
BOOLEAN InitWindowClass(HINSTANCE hInstance, int nCmdShow)
{
WNDCLASSEX wcex;
HWND hWnd;
TCHAR szWindowClass[] = L"窗口示例";
TCHAR szTitle[] = L"模拟时钟";
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = ;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = ;
wcex.cbWndExtra = ;
wcex.hInstance = hInstance;
wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wcex.lpszMenuName = NULL;
wcex.lpszClassName = szWindowClass;
wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_APPLICATION));
if (!RegisterClassEx(&wcex))
return FALSE;
hWnd = CreateWindow(
szWindowClass,
szTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL
);
if (!hWnd)
return FALSE;
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
return TRUE;
}

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABAEAAAINCAIAAADA8/EOAAAgAElEQVR4nO3d249l2V0f8PPn9FM/Wpp+noeJoiR0gRJbMYoUpNY4QoiomiiKTBKDIi4O0MXFARIHbEJADnHJjtIDGF9RFAGFxBCGhDSOGEcCKZ4Z2+MJtsND5aFOVdc5dS57r8v+rb3X56Pvg13T53TVOWut/fv2OVW1+tR3vUdERERERPrJ6lPf9Z53PvBYREREREQK5r9+27e1kLufmA4gIiIiIlIl4dO/DiAiIiIiMmnCp38dQERERERk0oRP/zqAiIiIiMikCZ/+dQARERERkUkTPv3rACIiIiIiibl30L5bhU//6R3gd3/w+z/1g/90SH7nB97/9j8/DX+GRERERETKZuIOcHl5eXl5efgjdTvAr338kxd/8NrFH/zRnbz2+6++9vuvvvbJ3/jCJ3/985/89c//+499/Ev/+LvDnyERkUXmlZfuPXz3yzf/97V3v+v6/7738b13fejx7T/88odeuPf40ePbf/jeS+9d/9/HDx/ee/GVYX/pxg2vP42tj7zzgcfvPHrx3gsPX4t+iERE6uXAoF/pdYDbQ39OAUjsAJ/5zOe/+a1vfeObR/LNb33rU5/5/J8+fvnAXYmISHKuO8DLH3ph/79ErafzWx1gPZ3f+sjtDvD44cPbN78zx293gMcPH273jdt/S/yjJCJSKdN3gJvRP7MAJHaAL3z+t//H//zfP/zhz/zIL3z6Rz/yWx/8d5/6sV/5zT/+4//11ptvfOn117/0+utvvvnGz3/i937+E7+nA4iI1Evi6wA30/nN/9juANf/e9ccv9UBXnnpbt/Ye1sRkSUlpAPkvwKQ3gE+97kv/MmzP3/5xz/5vp/8xHf/7Me/58O/9g8/+rFXX3321hv/53YH+PArv6MDiIjUyMbkfe/e43dv/uP95r/ib/7hF195Pp1fF4ODHeBDL+2863v3Xnj42qMXN98FtO8ViV0vFIiIzDzdvQ7wm7/12T959uff/9Hf+Ac/+2vf+VO/+J6f+bn3/NxPv/rqs7fe+PLrr7/++ut/9uabb3z0C7/9K7/3GR1ARKRa3vv43vXrADvf0L/xL/G7Xge4/SeTXgd45aV3Pbw19D9+tPNvufuihIhITPb8k8beef3ovSX8p1KvAAR8P8BVB/j2D374r/3wT/2Nn3jybT/zL7/953/46nWA11//s6vXAf7jf3vlE//9kzqAiEitPHrx3r17D194172X3rv9Jv7N1wHe+cDj4x3g5iM7vh9gY4jf+T3B1+9B0gFEpOkU7wAH7LtVwbcATf1zga46wF//4E/+zbMff/ivPvgd/+aH3v3RH7h6HeDmvUCv/cVrr/3FazqAiEidvPyhF9718IV791567ysv3Xv40otDXge4d+/e5nuB1nnt3e/a7ADbrwPcnvt1ABGRnGS+F6hU7n5iQzvA3/rpH/v2n/uRv/1v/8V7fukD3/mr73/11Wdv3vp+gG998xvf+uY3dAARkRq5GsSfD98HXwe4+X6Aren8tXe/6+ojGz/cc/d7gZ4P99t94LaXHuoAIiKHEz7953aA7/jXP/R3PvKDf/eX/9nf+9g/+fsf/0evvvrsjS9fd4A33njnna9/9Stf0QFERGrklZdefOXOzwV65wOP9w/c2/9C/6GX7t2a0W/96oB93w9w/e2/R18H2EUHEBFZJ3z6z+gAn/7cH/7RF3/0/GMf/MSv/th/+uWf+M+/dPbKR373d//wpgO88eUvv/21r7755ps6gIhIvVwP3+899KbUO/+Qf/WNBNv/ln/kdYDn8V4gEZGchE//6R3g1z/12b/6q//39tfeevurb7391be+/vbbX3/7q1//2le+8Zf/95vf+Mt33vn61772ta985a2vfOUtHUBEpF7uvg7wykv37r304uMdP5h/4808z2/16MV79+49frT1I4buVojn2dcBtj8Zvx9ARGRXwqf/9A7wH37hI5/6zOfv5tOf++3PfuG/fPqzX7j5yK/+wi9+8fveF/5Yi4gsMhtj99XsfjWdP3748Pbbez7weONf6K9z9QrArV8VfOd3BQx+HWDjlYT9txURkfDpP70DfPn93/vF73vfnz5++Wi++H3v+/L7vzf8sRYRWWTWHeDqvT13Bu6b0fz6O3c33pDzykvbN7k73O+4t9vfW7zOyx96YddbfXQAEZFZ5XgHEBERERGRJUUHEBERERHpKzqAiIiIiEhf0QFERERERPqKDiAiIiIi0ld0ABERERGRvqIDiIiIiIj0FR1ARERERKSv7O0Af/A93yUiIiIiInPPuA5wCQAAzJkOAAAAfdEBAACgLzoAAAD0RQcAAIC+6AAAANAXHQAAAPqiAwAAQF90AAAA6IsO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" alt="" />

VC++SDK编程——模拟时钟的更多相关文章

  1. Windows下编程--模拟时钟的实现

    windows下编程--模拟时钟的实现: 主要可以分为几个步骤: (1)   编写按键事件处理(启动和停止时钟) (2)   编写时钟事件处理,调用显示时钟函数 (3)   编写显示时钟函数,要调用显 ...

  2. VC++SDK编程——鼠标的应用示例

    #include <Windows.h> #include <tchar.h> BOOLEAN InitWindowClass(HINSTANCE hInstance, int ...

  3. VC++SDK编程——字体及位置示例

    #include <Windows.h> #include <tchar.h> #include <math.h> #define PI 3.1415926 BOO ...

  4. 海康SDK编程指南(C#二次开发版本)

    海康SDK编程指南 目前使用的海康SDK包括IPC_SDK(硬件设备),Plat_SDK(平台),其中两套SDK都需单独调用海康播放库PlayCtrl.dll来解码视频流,返回视频信息和角度信息.本文 ...

  5. 【SDK编程】

    #include <stdio.h> #include <windows.h> int main() { DeleteFile("C:\\test.txt" ...

  6. 模拟时钟(AnalogClock)和数字时钟(DigitalClock)

    Demo2\clock_demo\src\main\res\layout\activity_main.xml <LinearLayout xmlns:android="http://s ...

  7. C语言 SDK编程之通用控件的使用--ListView

    一.ListView控件属于通用控件CONTROL中的一种,在SDK编程方式时要使用通用控件 必须包含comctl32.dll,所以代码中要有头文件: commctrl.h 导入库:comctl32. ...

  8. 一个模拟时钟的时间选择器 ClockPicker

    最近开发的一个模拟时钟的时间选择器 ClockPicker,用于 Bootstrap,或者单独作为一个 jQuery 插件. 源代码托管在 GitHub 上: ClockPicker 最近项目中需要用 ...

  9. 使用PHP Socket 编程模拟Http post和get请求

    这里给大家分享一段使用PHP Socket 编程模拟Http post和get请求的代码,非常的实用,结尾部分我们再讨论下php模拟http请求的几种方法. <?php /** * 使用PHP ...

随机推荐

  1. hdu1078(记忆化搜索)

    题意:给出n*n的格子,每个各自里面有些食物,问一只老鼠每次走最多k步所能吃到的最多的食物 这道题目,值得我记住它,re了n次,以前写搜索没有注意的一个小地方,导致re这么多次的 ac代码: #inc ...

  2. ZooKeepr日志清理(转)

    转载请用注明:@ni掌柜 nileader@gmail.com 在使用zookeeper过程中,我们知道,会有dataDir和dataLogDir两个目录,分别用于snapshot和事务日志的输出(默 ...

  3. Spring.Net框架二:配置Spring.Net框架环境

    一.下载DLL文件 去Spring的官方网站下载并解压,然后直接添加dll文件的引用就可以了.在上一篇文章中,已经介绍过Spring.Net框架中需要使用到的dll文件.这些程序集文件位于Spring ...

  4. 在linux 列出 超级用户 普通用户和 系统用户

    #!/bin/bash echo Please select which list you want to print echo "1. admin (enter 1)" echo ...

  5. 抹掉Scala的糖衣(14) -- Update Method

    欢迎关注我的新博客地址:http://cuipengfei.me/ 在Scala中,名字叫做update的方法是有特殊作用的. 比如: 1 2 3 val scores = new scala.col ...

  6. sql 追踪 神器

    http://www.thinkphp.cn/download/690.html 一个中国人开发的php工具箱此工具能几秒钟追踪出sql 数据库操作, 能分析出 Thinkphp3.2 的任意sql ...

  7. 001杰信-创建MyEclipse与maven项目

    准备工作: 自己的私人仓库:

  8. jQuery补充,模拟图片放大镜

    jQuery补充,模拟图片放大镜 html <!DOCTYPE html> <html lang="en"> <head> <meta c ...

  9. 【BZOJ】1004: [HNOI2008]Cards(置换群+polya+burnside)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1004 学习了下polya计数和burnside引理,最好的资料就是:<Pólya 计数法的应用 ...

  10. 杂文 - 设计MIUI主题 的 MIUI设计师

    设计MIUI主题 的 MIUI设计师 本文地址: http://blog.csdn.net/caroline_wendy 时间: 2014.6.10 By Spike. 1. 首先注冊MIUI设计师: ...