当我编译以下内容时:
printf("%*s",lengths[i],row[i]);
Run Code Online (Sandbox Code Playgroud)
我收到这个警告:
4.0.c:407: warning: field width should have type ‘int’, but argument 2 has type
‘long unsigned int’
Run Code Online (Sandbox Code Playgroud)
长度声明为:unsigned long *lengths;.
我试图解决问题但无济于事.添加这个,
printf("%*lu",(unsigned long)lengths[i],row[i]);
Run Code Online (Sandbox Code Playgroud)
我没有得到更多的警告,但代码不能正常工作.
谢谢维拉
把它投到int:
printf("%*s", (int) lengths[i], row[i]);
Run Code Online (Sandbox Code Playgroud)