지금 이제 막 책 사서 이제 막 배우고 있는데요 형들!
너무 궁금한게
지금 string이랑 char
문자 배우고 있거든
그런데 예제에 예를들어
char a = 'A';
char b = 'B';
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(a+b);
----------------------------------이렇게 하면 결과값이
AB
131
----------------------------------이렇게 출력이 되고
string a = "Hello";
string b = "World";
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(a+b);
-------------------------------이렇게하면
HelloWorld
HelloWorld
------------------------------
이렇게 되는데
왜 char는 a+b가 숫자료 표현되고
문자열 string은 문장 그대로 인식을 해주는거에요??
호기심에 예제에도 없는거
손댔다가 지금 궁금해서 다음 진도도 못나가고 여기저기 검색하다가
여기까지 오게됐어 형들 ㅠㅠㅠㅠ
char 은 문장이기때문에 문자 + 문자 = 문자열이되니까 형변환이 된거라고 생각합니다
char 은 문자!! 문자입니다 잘못썼구요 string은 반대로 문자열이기때문에 + 가 된다고 생각합니다 :(
문자는 결국 숫잔데 + 연산자 썼으니 암시적으로 int 됐고 그대로 출력했으니 숫자로 나온거
오버로딩과 암시적 형변환의 환장할 궁합
https://stackoverflow.com/questions/16851809/char-char-int-why
아.. 그럼 char를 궂이 따로 저장해 놓은걸 하나로 엮어 쓰려고 할 경우에는 앞으로 뭘 배우게 될지 모르겠지만 다른 방법을 찾아봐야 겠네요-!
더한 후에는 괄호로 묶고 char로 다시 캐스팅해줘야겠죠
와...글쓰고 있는데 답글이 이렇게 더 달렸네.. 모두 너무 감사합니다.ㅠㅠㅠㅠㅠㅠㅠㅠ
A와B의 아스키코드값이 더해진것 char랑 int형이 정말로 다른지 자료형을 더 공부하시면 도움될듯
string은 더하기가 저렇게되는 이유는 나중에 연산자재정의 배우시면 알게됨
c#은 저런 경우에 ToString이였나 뭐 처리하는 방식이 있던걸로앎