亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

linux c下log輸出代碼模板示例代碼

 更新時間:2018年12月06日 08:38:23   作者:漫步_9378  
這篇文章主要給大家介紹了關于在linux c下log輸出代碼模板的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

本文主要介紹了關于linux c下log輸出代碼模板的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧

模板

模本分為兩個文件:log.c和log.h.

log.c

/** log.c **/
#include <unistd.h>
#include "log.h"

// log文件路徑
#define filepath "./ps_com_log.log"
 
//設定時間
static char * settime(char * time_s){
 time_t timer=time(NULL);
 strftime(time_s, 20, "%Y-%m-%d %H:%M:%S",localtime(&timer));
 return time_s;
}
 
/*
 *打印
 * */
static int PrintfLog(char * logText, char * string){
 FILE * fd = NULL;
 char s[1024];
 char tmp[256];

 //使用追加方式打開文件
 fd = fopen(filepath,"a+");
 if(fd == NULL){
  return -1;
 }
 
 memset(s, 0, sizeof(s));
 memset(tmp, 0,sizeof(tmp));
 
 sprintf(tmp, "*****[pid=%d]:[", getpid());
 strcpy(s, tmp);
 
 memset(tmp, 0,sizeof(tmp));
 settime(tmp);
 strcat(s, tmp);

 strcat(s, "]*****");
 fprintf(fd, "%s", s);

 fprintf(fd, "*[%s]*****:\n",logText); 
 fprintf(fd, "%s\n",string); 
 fclose(fd);
}
 
 /*
 *日志寫入
 * */
void LogWrite(char *logText,char *string)
{
 //[為支持多線程需要加鎖] pthread_mutex_lock(&mutex_log); //lock. 
 //打印日志信息
 PrintfLog(logText, string);
                  
 //[為支持多線程需要加鎖] pthread_mutex_unlock(&mutex_log); //unlock.            
}

log.h

#ifndef __LOG_H__
#define __LOG_H__
#include <stdio.h>
#include <string.h>
#include <time.h>
 

void LogWrite(char * logText,char *string);

#endif /* __LOG_H__ */

測試文件

既然有了log輸出功能,下面就簡單測試一下:

#include "stdio.h"
#include "log.h"
int main(int argv,char**argc){
 printf("test\n");
 LogWrite("INFO","Hello World!");
 LogWrite("error","H.e.l.l.o W.o.r.l.d!");
 LogWrite("mint","H e l l o W o r l d!");
 LogWrite("iout","Hallo World!");

 return 0;
}

以上代碼很簡單,不在過多解釋。

運行結果:

*****[pid=15971]:[2018-12-05 14:24:21]******[INFO]*****:
Hello World!
*****[pid=15971]:[2018-12-05 14:24:21]******[error]*****:
H.e.l.l.o W.o.r.l.d!
*****[pid=15971]:[2018-12-05 14:24:21]******[mint]*****:
H e l l o W o r l d!
*****[pid=15971]:[2018-12-05 14:24:21]******[iout]*****:
Hallo World!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • .htaccess rewrite 規(guī)則詳細說明

    .htaccess rewrite 規(guī)則詳細說明

    用Apache虛擬主機的朋友很多,apache提供的.htaccess模塊可以為每個虛擬主機設定rewrite規(guī)則,這對網站SEO優(yōu)化相當有用,同時也改善了用戶體驗
    2016-04-04
  • ubuntu系統(tǒng)下matplotlib中文亂碼問題的解決方法

    ubuntu系統(tǒng)下matplotlib中文亂碼問題的解決方法

    本篇文章主要介紹了ubuntu系統(tǒng)下matplotlib中文亂碼問題的解決方法,具有一定的參考價值,有興趣的可以了解一下
    2017-06-06
  • 詳解linux中nano命令

    詳解linux中nano命令

    這篇文章主要介紹了詳解linux中nano命令,詳細的介紹了nano命令的用法,非常具有實用價值,需要的朋友可以參考下
    2017-09-09
  • Linux如何處理文件已刪除但空間不釋放的問題

    Linux如何處理文件已刪除但空間不釋放的問題

    這篇文章主要介紹了Linux如何處理文件已刪除但空間不釋放的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • Linux日志中查找關鍵字及其前后的信息實例方法

    Linux日志中查找關鍵字及其前后的信息實例方法

    在本篇文章里小編給大家整理的是關于Linux日志中查找關鍵字及其前后的信息實例方法,需要的朋友們可以學習下。
    2019-10-10
  • linux下如何創(chuàng)建守護進程的步驟

    linux下如何創(chuàng)建守護進程的步驟

    本篇文章主要介紹了linux下如何創(chuàng)建守護進程的步驟,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Linux下如何掛載磁盤的方法示例

    Linux下如何掛載磁盤的方法示例

    這篇文章主要介紹了Linux下如何掛載磁盤的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • Linux下的粘滯位詳細介紹

    Linux下的粘滯位詳細介紹

    這篇文章主要介紹了Linux下的粘滯位詳細介紹的相關資料,需要的朋友可以參考下
    2017-03-03
  • linux下查看so或可執(zhí)行程序的依賴庫

    linux下查看so或可執(zhí)行程序的依賴庫

    今天小編就為大家分享一篇關于linux下查看so或可執(zhí)行程序的依賴庫,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • 解決vim語法高亮不起作用的方法

    解決vim語法高亮不起作用的方法

    這篇文章主要給大家介紹了如何解決vim語法高亮不起作用的方法,文章給大家介紹了多種解決的方法,大家可以根據需要看看是哪個方面的問題,希望能對遇到這個問題的朋友們有所幫助,下面來一起看看吧。
    2016-10-10

最新評論