How to print a variable name in C?

How to print and store a variable name in string variable?

We strongly recommend you to minimize your browser and try this yourself first

In C, there’s a # directive, also called ‘Stringizing Operator’, which does this magic. Basically # directive converts its argument in a string.

#include <stdio.h>
#define getName(var)  #var

int main()
{
	int myVar;
	printf("%s", getName(myVar));
	return 0;
} 

Output:

MyVar


We can also store variable name in a string using sprintf() in C.

# include <stdio.h>
# define getName(var, str)  sprintf(str, "%s", #var) 

int main()
{
	int myVar;
	char str[20];
	getName(myVar, str);
	printf("%s", str);
	return 0;
} 

Output:

MyVar

This article is contributed by Abhay Rathi. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

GATE CS Corner    Company Wise Coding Practice

Recommended Posts:







Writing code in comment? Please use ide.geeksforgeeks.org, generate link and share the link here.