실습과제 1번 배열 크기 : 8 문자열 길이 : 7 // MBCS 예제: 출력 결과 이해하기 #include <stdio.h> #include <string.h> int main() { char str[] = "ABC한글"; int size = sizeof(str); int len = strlen(str); printf("배열 크기 : %d \n", size); printf("문자열 길이 : %d \n", len); } 배열 크기 : 8 문자열 길이 : 7
실습과제 2번 배열 크기 : 12 문자열 길이 : 5 // WBCS 예제: 출력 결과 이해하기 #include <stdio.h> #include <string.h> int wmain(void) { wchar_t str[] = L"ABC한글"; int size = sizeof(str); int len = wcslen(str); printf("배열 크기 : %d \n", size); printf("문자열 길이 : %d \n", len); } 배열 크기 : 12 문자열 길이 : 5
실습과제 3번 // SBCS와 WBCS 예제 #include <stdio.h> #include <windows.h> int wmain() { LPSTR str1 = "SBCS String"; LPWSTR str2 = L"WBCS String"; CHAR arr1[] = "SBCS String"; WCHAR arr2[] = L"WBCS String"; printf("%s\n", str1); printf("%s\n", arr1); wprintf(L"%s\n", str2); wprintf(L"%s\n", arr2); }
실습과제 4번 str1 size : 40 str1 length : 19 str2 size : 12 str2 length : 5 // MBCS와 WBCS 동시 지원 예제: 출력 결과 이해하기 //#define UNICODE //#define _UNICODE #include <stdio.h> #include <tchar.h> #include <windows.h> int _tmain() { TCHAR str1[] = _T("MBCS or WBCS String"); _tprintf(_T("str1 size: %d\n"), sizeof(str1)); _tprintf(_T("str1 length: %d\n"), _tcslen(str1)); TCHAR str2[] = _T("ABC한글"); _tprintf(_T("str2 size: %d\n"), sizeof(str2)); _tprintf(_T("str2 length: %d\n"), _tcslen(str2)); } str1 size : 40 str1 length : 19 str2 size : 12 str2 length : 5
실습과제 5번 str1 size : 20 str1 length : 19 str2 size : 8 str2 length : 7 // 실습과제 4번의 출력결과는 WBCS 모드의 결과이다. // 이번에는 출력결과가 SBCS 모드가 되도록 변경하시오. #include <stdio.h> #include <tchar.h> #include <windows.h> int _tmain() { TCHAR str1[] = _T("MBCS or WBCS String"); _tprintf(_T("str1 size: %d\n"), sizeof(str1)); _tprintf(_T("str1 length: %d\n"), _tcslen(str1)); TCHAR str2[] = _T("ABC한글"); _tprintf(_T("str2 size: %d\n"), sizeof(str2)); _tprintf(_T("str2 length: %d\n"), _tcslen(str2)); } str1 size : 20 str1 length : 19 str2 size : 8 str2 length : 7