【发布时间】:2018-10-29 23:32:18
【问题描述】:
我有一个带换行符的输入,我需要将其读取到缓冲区。格式仅限于结构。
输入如下所示:
{
[
5.5
;
1
]
, [ 1; 2 ] ,[3; 4]}
而我的代码是这样的:
char *s2 = NULL;
size_t n = 0;
int slozZav = 0;
int hranZav = 0;
getline(&s2, &n, stdin);
if(sscanf(s2, " %c [ %lf ; %lf ] , [ %lf ; %lf ] , [ %lf ; %lf ] %c", &s1, &Ax, &Ay, &Bx, &By, &Cx, &Cy, &s) == 8 && s=='}' && s1=='{' && slozZav % 2 == 0 && hranZav % 2 == 0) { ... }
我使用 getline 的方式是否正确?我尝试使用scanf() 读取它,但是我无法将标准输入复制到缓冲区。
【问题讨论】: