For normal file path, I can use stat and get size of it. When the path contains non-ascii names like C:\temp\sमानकe\app.log, it does not work.
int main(int argc, char * argv[])
{
struct stat FileAttrib;
if (stat(argv[1], &FileAttrib) < 0) {
printf("File Error Message = %s\n", strerror(errno));
}
else
{
printf("File size %d\n", FileAttrib.st_size);
}
return 0;
}
stat takes only char *. The path received from command prompt is not really coming a valid file.

Assuming you are using Windows, try using GetShortPathNameW to get the short path name (if it exists), and then pass the short name to
stat().