我为字符串定义了一个数组。如果我以第一个元素不是空字符串的方式定义它,它工作正常。当它是一个空字符串时,scanf()
另一个字符串的下一个停止读取输入字符串并且程序停止执行。
现在我不明白定义字符串数组如何影响对输入的读取scanf()
。
char *str_arr[] = {"","abc","","","b","c","","",""}; // if first element is "abc" instead of "" then works fine
int size = sizeof(str_arr)/sizeof(str_arr[0]);
int i;
printf("give string to be found %d\n",size);
char *str;
scanf("%s",str);
printf("OK\n");