现在的位置: 首页 > 综合 > 正文

c misc test

2014年02月22日 ⁄ 综合 ⁄ 共 1336字 ⁄ 字号 评论关闭

/*
 *Filename: hl.c
 *Author: hemmingway <hemmingway@163.com>
 *Description: this a misc practice program
 *Compile with: gcc -g -Wall -o hl.debug  hl.c
 */

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <string.h>

#define ENABLE_DEBUG 1   //else, comment this line
#ifdef ENABLE_DEBUG
#define DEBUG_LOG(fmt,...) fprintf(stderr, "%s:%d: " fmt "\n",   \
__func__, __LINE__, ## __VA_ARGS__)
#else
#define DEBUG_LOG(fmt, ...) do {} while (0)
#endif

/*question: does this line can be works??*/
// #define DEBUG_LOG(fmt,...) fprintf(stderr, "%s:%d: " (fmt) "\n",__func__, __LINE__, ## __VA_ARGS__)

int max(int i, int j)
{
if(i>i)
return (i);
else
return (j);
}

int main()
{
int i, j, k;
i = 3;
j = 5;

time_t timep;
struct tm *tim;
char *p;
timep = time((time_t *)NULL);
tim = gmtime(&timep);
p = malloc(30*sizeof(char));
strncpy(p, ctime(&timep), 30);

printf("hello, world..now time is:%d-%d-%d %d:%d:%d\n", 1900 + tim->tm_year,1+ tim->tm_mon, 
tim->tm_mday,8 + tim->tm_hour, tim->tm_min, tim->tm_sec);
k = max(i,j);
printf("ctime: %s, max: %d\n",p, k);

//test c99 comment

//c89
printf( "The file is %s. \n", __FILE__ );
    printf( "The date is %s. \n", __DATE__ );
    printf( "The time is %s. \n", __TIME__ );
    printf( "This is line %d. \n", __LINE__ );
    printf( "__STDC__ is: %d \n", __STDC__ );

//c99
    printf( "This function is %s. \n", __func__ );  //__func__ c99的当前调用的函数名

//test debug_log

printf("\n\ntest debug log macro.\n\n");
    
DEBUG_LOG("Registering domain event cbs");
DEBUG_LOG("debug time, ctime: %s", p);

free(p);

return 0;
}

抱歉!评论已关闭.