sprintf(array,"%4d \ n",int),将其转回int

时间:2015-10-23 02:19:53

标签: c arrays udp format printf

我无法理解这段代码如何将int格式化为字符串:

length[16];
sprintf(length, "%4d\n", len );
length[5]=0;
UDP_Write( sd, &cli, length, 6);

然后我需要将长度转回int,但是如何?例如,如果len == 512,isn&t; t length将被填充如下:0512x0?如果有一个长度的字符,我怎么把它变回一个int,我不知道它的'内容?

1 个答案:

答案 0 :(得分:1)

对于输入int 512,代码的结果是字符串" 512\n"。那里没有零或字母,不知道你从哪里得到这个想法。

要将字符串转换为int,您可以使用任何常用方法,例如sscanfstrtol等,因为他们可以忽略前导空格。