1#include <wchar.h> 2 3int wcswidth(const wchar_t* wcs, size_t n) { 4 int l = 0, k = 0; 5 for (; n-- && *wcs && (k = wcwidth(*wcs)) >= 0; l += k, wcs++) 6 ; 7 return (k < 0) ? k : l; 8} 9