Program to convert string from source to dest. #include #include #include #include #include char *convert_string(char *str, const char *destset, const char *srcset) { unsigned char *buf; iconv_t cd; size_t insize = 0; size_t outsize = 0; size_t nconv = 0; char *inptr; char *outptr; if (!str) return NULL; buf = (unsigned char *)malloc(strlen(str)*4); insize = strlen(str); inptr = str; outsize = strlen(str)*4; outptr = buf; cd = iconv_open(destset, srcset); if (cd == (iconv_t) -1) { free(buf); printf("iconv_open(%s, %s) Error\n",destset, srcset); return strdup(str); } nconv = iconv(cd, &inptr, &insize, &outptr, &outsize); if (nconv == (size_t) -1) { printf("iconv Error\n"); return str; } *outptr = '\0'; iconv_close(cd); return buf; }