#include #include #include #define BUFSIZE 2 int main() { iconv_t cd; char inbuf[BUFSIZE] = {'a', 'b'}, *inbufp = inbuf; char outbuf[BUFSIZE] = {0}, *outbufp = outbuf; size_t inleft = BUFSIZE, outleft = BUFSIZE, diff; cd = iconv_open("UTF-8", "CP1258"); assert(cd != (iconv_t) -1); diff = iconv(cd, &inbufp, &inleft, &outbufp, &outleft); assert(diff == 0); assert(inleft == 0); assert(outleft == 0 || memcmp(outbuf, inbuf, BUFSIZE) == 0); return 0; }