C언어에서 리터럴 상수도 메모리에 할당된다고들었습니다.

그렇다면

main함수안에 


3;


이렇게 선언하면 main함수가 끝날때까지 메모리에 계속 남아있는겁니까?


1+2; 


이렇게 연산에 의해서 상수가 선언될시 1,2가 아닌 3만 선언됩니까?


변수에 값을 저장할때 


int var = 5; 


이때 변수메모리만 할당하는게 아니라 상수5도 메모리에 할당합니까?

그러면 총 8바이트를 할당하게 되나요?


반복문을 사용할때 

ex) for(i=0; i<n; i++)

i값은 증감연산으로 인해서 0부터 n까지 증가하는데

이때 증가하면서 저장되는값들도 상수로 선언되나요?