所以我不能真正弄清楚为什么scanf搞乱了一个[0]。当我打印出数组时,一个[0]是空的,我想要一个[0]它存储在[1]中。使用scanf for循环与fgets返回一个[0]为空
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
char *a[128];
int i;
int num;
scanf("%d", &num);
for (i = 0; i < 2; i++) {
a[i] = malloc(50*sizeof(char));
fgets(a[i], 100, stdin);
}
printf("[0] = %s [1] = %s", a[0], a[1]);
return 0;
}
您的输入是什么? –
说我输入:1 [enter]这是一个字符串[enter] – user1455112