Tại sao đoạn mã cụ thể này trả về false trên strstr() nếu tôi nhập "test"?strstr không hoạt động
char input[100];
int main()
{
fgets(input, 100, stdin);
printf("%s", input);
if(strstr("test message", input))
{
printf("strstr true");
}
}
Tôi nghĩ strstr đã tìm kiếm thông số đầu tiên cho các trường hợp của tham số thứ hai? Nó hoạt động khi tôi thay thế đầu vào bằng một số văn bản hoặc chỉ gán nó một cái gì đó trực tiếp, nhưng có vẻ như nó không hoạt động với các fgets.
Đối với việc xử lý sự cố, có http://stackoverflow.com/questions/2693776/removing-trailing-newline-character-from-fgets-input –