我正在尝试从文件中读取字符串并将它们转换为整数以存储在结构中。strtol() 函数运行良好,但会从标记的开头删除任何 0。有什么办法可以保留它们吗?输入文件的格式如下例所示。
003345.755653
000046.003265
073532.003434
122280.065431
输入文件^^^
struct store{
int *age;
int *ref;
}rec[20];
char *token;
char*ptr;
while (!feof (filea)){
fgets(buffer, sizeof buffer, filea);
token = strtok(buffer, ".");
rec[count].age = malloc(10);
rec[count].age = strtol(token, &ptr, 10);
printf("Age: %i\n", rec[count].age);
token = strtok(NULL, ".");
rec[count].ref = malloc(10);
rec[count].ref = strtol(token, &ptr, 10);
printf("Ref: %i\n\n", rec[count].ref);
count++;
}