#include <windows.h>
#include <stdio.h>
void WriteToLog(char* szMyPath,BYTE *pData, int len, BOOL bSend)
{
SYSTEMTIME st;
GetLocalTime(&st);
char sPath[256], sFile[256], sWrite[5000];
memset(sWrite, 0, 5000);
memset(sPath, 0, 256);
strcpy(sPath, szMyPath/*"C:\\"*/); //同一路径下
memset(sFile, 0, 256);
sprintf(sFile, "%d%02d%02d%02d.log", st.wYear, st.wMonth, st.wDay, st.wHour);
sprintf(sPath, "%s\\%s", szMyPath, sFile);
sprintf(sWrite, "%02d:%02d:%02d ", st.wHour, st.wMinute, st.wSecond);
if (bSend)
{
strcat(sWrite, "发送:");
}
else
{
strcat(sWrite, "接收:");
}
for (int i=0; i<len; i++)
{
char temp[20];
memset(temp, 0, 20);
sprintf(temp, "%02X ", pData[i]);
strcat(sWrite, temp);
}
strcat(sWrite, "\r");
strcat(sWrite, "\n");
FILE *pFile;
pFile = fopen(sPath, "at+"); //
if (pFile != NULL)
{
fputs(sWrite, pFile);
fclose(pFile);
}
}
void main()
{
BYTE a[5] = {"1111"};
WriteToLog("d:\\",(BYTE*)a,5,FALSE);
printf("The bytes of the variables are:\n");
printf("BYTE:%d bytes\n",sizeof(BYTE));
printf("int:%d bytes\n",sizeof(int));
printf("int:%d bytes\n",sizeof(unsigned int));
printf("char:%d byte\n",sizeof(char)); /* char型的字节数为1 */
printf("short:%d bytes\n",sizeof(short)); /* short型的字节数为2 */
printf("long:%d bytes\n",sizeof(long)); /* long型的字节数为4 */
printf("float:%d bytes\n",sizeof(float)); /* float型的字节数为4 */
printf("double:%d bytes\n",sizeof(double)); /* double型的字节数为8 */
int nint = 0xFFFFFFFF;
printf("%x\n",nint);
char chchar = 0x01;
printf("%x\n",chchar);
WORD wword = chchar<<8|chchar;
printf("%x",wword);
}