小编aja*_*jay的帖子

字符串中带前导零的填充在Solaris中有效,但在RHEL中则无效

该程序在一个平台上打印带有前导0的字符串,而不是另一个平台.

#include <stdio.h>
#include <string.h>

int main(void)
{
   char test[20];
   char a[4]="a12";
   sprintf(test,"%019s\n",a);
   printf("%s\n",test);
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:

Solaris : 0000000000000000a12
RHEL    :                 a12 (left padding with spaces)
Run Code Online (Sandbox Code Playgroud)

如何在两个平台上获得前导零?

c linux string printf solaris

1
推荐指数
1
解决办法
108
查看次数

标签 统计

c ×1

linux ×1

printf ×1

solaris ×1

string ×1