This example converts a string to uppercase based on the current country settings.
#define INCL_DOSNLS /* DOS National Language Support values */ #define INCL_DOSERRORS /* DOS Error values */ #include <os2.h> #include <stdio.h> #include <string.h> #define COUNTRY_CODE 0 /* Country code (0 = current) */ #define NLS_CODEPAGE 0 /* Code page for conversion (0 = current) */ int main(VOID) { COUNTRYCODE Country = {0}; /* Country code */ CHAR uchString[80] = ""; /* String */ APIRET rc = 0; /* Return code */ Country.country = COUNTRY_CODE; /* Country code */ Country.codepage = NLS_CODEPAGE; /* Code page */ strcpy(uchString, "Capitalize this entire sTrInG, please!"); printf("Original string is: %s\n", uchString); rc = DosMapCase(sizeof(uchString), /* Length of string to convert */ &Country, /* Country and code page info */ uchString); /* String to convert */ if (rc != NO_ERROR) { printf("DosMapCase error: return code = %u\n", rc); return 1; } else { printf("Converted string is: %s\n", uchString); } /* endif */ return NO_ERROR; }