C# macro function via #define __FILE__ __LINE__ ___FUNCTION__ __DATE__ __TIME__

复制代码
#include <iostream>
#include <uuid/uuid.h>
#include <ctime>
#include <unistd.h>
#include <fstream>
#include <sstream>

static char *dtValue=(char*)malloc(20);
static char *uuidValue=(char*)malloc(40);

char *getUuid2()
{
    uuid_t newUUID;
    uuid_generate(newUUID);
    uuid_unparse(newUUID,uuidValue);
    return uuidValue;
}

char *getTimeNow()
{
    time_t rawTime=time(NULL);
    struct tm tmInfo=*localtime(&rawTime);
    strftime(dtValue,20,"%y%m%d%H%M%S",&tmInfo);
    return dtValue;
}

#define Multiply(x,y){x*y}
void macro8();
void macro9();

int main()
{
    macro9();
    return 0;
}

void macro9()
{
    cout<<"FILE="<<__FILE__<<endl;
    cout<<"LINE="<<__LINE__<<endl;
    cout<<"FUNCTION="<<__FUNCTION__<<endl;
    cout<<"DATE="<<__DATE__<<endl;
    cout<<"TIME="<<__TIME__<<endl;
    cout<<"Finished in macro9() and now is "<<getTimeNow()<<endl;
    free(uuidValue);
    free(dtValue);
}

void macro8()
{
    double d1=10.4352,d2=4645.43;
    double d3=Multiply(d1,d2);
    cout<<"d3="<<to_string(d3)<<endl;
    int i1=3452,i2=4265456;
    int i3=Multiply(i1,i2);
    cout<<"i3="<<i3<<endl;
}
复制代码

Compile via

g++ -g -std=c++2a -I. h1.cpp -o h1 -luuid

Run ./h1

 

int main()
{
    macro8();
    return 0;
}

 

 

 

posted @   FredGrit  阅读(105)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
历史上的今天:
2019-12-30 C# extract img url from web content then download the img
2016-12-30 WPF ItemsSource Order by Getter
点击右上角即可分享
微信分享提示