【发布时间】:2013-01-23 13:59:57
【问题描述】:
我知道 getline 是 C++ 标准,但我需要读取一行数字:
123856
并将其保存到数组中。但是如何在给定(作为输入)数字之间没有空格的情况下做到这一点?我希望用户输入是:
123856(没有空格),然后将其保存到一个数组(n 元素数组)中,之后,我希望我的数组看起来像这样:
array[0] = 1;
array[1] = 2;
array[2] = 3;
array[3] = 8;
array[4] = 5;
array[5] = 6;
但是如何在没有getline 的情况下用 C 语言制作它?
这不是我想要的:
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdbool.h>
int main(int argc, char **argv)
{
int t[4];
int i;
for(i=0; i<4; i++)
scanf("%d", &t[i]);
for(i=0; i<4; i++)
printf("%d\n", t[i]);
return 0;
}
【问题讨论】:
-
你从哪里读到的?一个文件?
-
嗯...
scanf("%d", digits);? -
@N1xx1:不,这(scanf)需要空格...
-
@yak:嗯,当然,但是你可以用一些数学魔法把它转换成数组。
-
试试这个链接...stackoverflow.com/questions/515612/…