c++ - 请教C语言字符串和字符数组的比较问题

浏览:45日期:2023-04-12

问题描述

用C语言读取1.txt文本文件:文件内容如下:123456789098741

程序如下:

include <stdio.h>include <string.h>include <stdlib.h>

int main(void){FILE *fp = fopen('1.txt','r');char *s='12345'; char buff[500]; while(fgets(buff,499,fp) != NULL){ if(strcmp(buff,s)==0) //为什么这里与“12345”比较没有等于0的时候呢printf('%s',buff);

}fclose(fp);system('pause');return 0;}//结果没有输出,应该怎么使用strcmp函数呢?

问题解答

回答1:

你的1.txt是用什么编码保存的?

回答2:

fgets读取的数据不会帮你去掉换行符’n’的,你这样比肯定不行了,你读取的buff里面比你的字符串s多一个换行符’n’

相关文章: