从不同字符串中的文件中读取2个巨大的数字

时间:2016-11-29 18:03:23

标签: c string file io strtok

我有一个输入文件,其中有2个非常长的数字(某处是10 ^ 8位),用空格分隔。我要做的就是阅读它们,从最后一个数字到第一个数字,并将它们放在不同的字符串中。以下是2个简短数字的示例:

1234 5678

我的程序需要像[] = {4,3,2,1}和n [] = {8,7,6,5}这样的数字才能工作。

FILE *f;
char str[100000000],*ptr,avect[100000000],nvect[100000000];
f = fopen ("input.txt", "r");
    fgets(str, MAX_NR_DIGITS, f); //read the whole line into a string
    strrev (str); //inverse the string and I am gonna read n firstly and a secondly
    nvect=strtok(str," ");

我在这里停了下来,因为我不知道strtok是如何工作的。在镜像之后,我必须在字符串中给出nvect数字n并在字符串中给出avect数字a。我认为这是一个很好的解决方法,但如果你知道一个更好的解决方法,我是开放的。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

基本上Strtok是如何工作的,只要它读到它到达某个字符或“分隔符”,在你的情况空间中,或“”是你正在使用的,因为数字是由空格分隔的,然后将字符串返回到分隔符,这是一个可能有用的有用链接 https://www.tutorialspoint.com/c_standard_library/c_function_strtok.htm