변수와 변수는 덧셈이 가능합니다. 다음의 예를 봅시다.

<%
intTemp1 = 1
intTemp2 = 2
intTemp3 = intTemp1 + intTemp2
Response.write intTemp3
%>%>


이건 너무 쉽죠? 1+2 의 결과를 출력시키는 것입니다. 출력은 3 이 나옵니다. 변수에 대입할때 " " 사용없이 숫자만 썼으니깐 숫자서브타입인것을 아시겠죠?

그런데 다음과 같이 하면 어떤 결과가 나올까요.

<%
intTemp1 = "1"
intTemp2 = "2"
intTemp3 = intTemp1 + intTemp2
Response.write intTemp3
%>


이번에는 변수에 데이터 대입시 " " 마크를 이용해서 대입했습니다. 아시겠지만 이건 스트링 서브타입입니다. 즉 우리가 아는 아라비아 숫자 일, 이가 아니라 문자라는 이야기죠. 그런데 이걸 더하고 출력하면 어떻게 될까요? - 알수 없죠 해봐야지..^^

그럼 문자를 서로 더 할수는 없을까 라는 의구심이 듭니다.

- 이런 의구심은 다음과 같이 해결합니다. 문자를 더해서 그 결과를 얻는 것은 아무런 의미가 없습니다. 왜냐하면 멀 더한다는 의미는 그것이 숫자일때 우리가 그 결과를 예상할 수 있을때 비로소 가치가 있는 거지. 결과를 예측 못할때는 그 가치가 없다라는 점입니다.

따라서 문자를 더 한다는 의미보다는 문자를 연결한다는 의미가 더 좋겠습니다.

무슨말인가하면

abcd 란 문자열과 efgh 라는 문자열을 연결해서 abcdefgh 라는 문자를 만들고자 한다면 비로소 사용가치가 있다는 뜻입니다.

이걸 한번 구현해봅시다. 소스를 아래와 같이 만들고 확인해 봅시다.

<%
intTemp1 = "abcd"
intTemp2 = "efgh"
Response.write intTemp1
Response.write intTemp2
%>


설명이 필요없죠? 위 소스를 확인해보면 결과는 abcdefgh 하고 출력됩니다. 그냥 Response.write 매쏘드를 이용해서 변수값을 연달아 출력시키는 겁니다. 하지만 위와 같이 하는것 보다는 아래 처럼 많이 사용합니다.

<%
intTemp1 = "abcd"
intTemp2 = "efgh"
Response.write intTemp1 & intTemp2
%>


& 기호를 이용해서 변수를 연결해서 사용 할 수 있다는 겁니다. 위의 소스를 더 간단하게 하면 다음과 같이 할 수 있습니다.

<%
Response.write "abcd"&"efgh"
%>