How can memory be allocated to a macro? : <p>For the below piece of code , I have defined a macro <strong>abc</strong> whose value has been redefined twice . When we run the code , the output is some garbage value , I am not getting how the macro is getting a garbage value when it is a macro and memory can't be allocated to a macro <strong>abc</strong> ?</p>

<pre><code>    #include&lt;stdio.h&gt;
    #define abc 10
    #define abc "rd"
    int main()
    {
    printf("%d",abc);
    return 0;
    }
</code></pre>
