C# 如何打印没有硬代码字符串的函数名?
c语言有类似于宏的文件/行来打印文件名和代码行号 那么,C语言是如何实现同样的目标的呢?是否可以这样做,或者需要汇编软件包 非常感谢。您可以使用,但我会小心这样做,因为它会以性能为代价,并且可能会在发布时给您带来问题 表示堆栈跟踪,它是一个或多个堆栈的有序集合 更多的堆栈帧C# 如何打印没有硬代码字符串的函数名?,c#,function,printing,line,C#,Function,Printing,Line,c语言有类似于宏的文件/行来打印文件名和代码行号 那么,C语言是如何实现同样的目标的呢?是否可以这样做,或者需要汇编软件包 非常感谢。您可以使用,但我会小心这样做,因为它会以性能为代价,并且可能会在发布时给您带来问题 表示堆栈跟踪,它是一个或多个堆栈的有序集合 更多的堆栈帧 您的问题标题和问题正文似乎相互矛盾。你能让他们问同样的问题吗?你的意思是吗?@Sweeper看,我以为OP的意思是nameof()根据问题标题。我相信这是一个x-y问题。你想做什么?(换句话说:你需要文件/行做什么?) va
您的问题标题和问题正文似乎相互矛盾。你能让他们问同样的问题吗?你的意思是吗?@Sweeper看,我以为OP的意思是
nameof()
根据问题标题。我相信这是一个x-y问题。你想做什么?(换句话说:你需要文件/行做什么?)
var stackTrace = new StackTrace(0, true);
var sf = stackTrace.GetFrame(0);
Console.WriteLine("FileName: {0}", sf.GetFileName());
Console.WriteLine("Line Number:{0} ",sf.GetFileLineNumber());
Console.WriteLine("Function Name:{0}",sf.GetMethod ());