我想将这些值扫描到数组中。我创建了一个结构,数组就是那种类型。 我的问题是,当我编译时,所有的int工作正常,但是当涉及到字符串时,它不允许我插入任何值并跳转到我的代码的下一条指令。 我做错了什么?
string(bs)
提前致谢!
答案 0 :(得分:1)
scanf("%s",str)
怎么样?其中str是一个char数组。
这是自定义getline函数
char * getline(char cp) {
char * line = malloc(100), * linep = line;
size_t lenmax = 100, len = lenmax;
int c;
if(line == NULL)
return NULL;
for(;;) {
c = fgetc(stdin);
if(c == EOF)
break;
if(--len == 0) {
len = lenmax;
intptr_t diff = line - linep;
char * linen = realloc(linep, lenmax *= 2);
if(linen == NULL) {
free(linep);
return NULL;
}
line = linen + diff;
linep = linen;
}
if((*line++ = c) == cp)
break;
}
*line = '\0';
return linep;
}
cp
是你想在一条线上读的字符。