我编写了一个进入文件并将txt文件的每一行复制到数组索引中的程序,然后将该文本行的该行放入另一个数组中按字符分隔线。我试图将字符数组中的第一个索引与“H”进行比较,但我无法做到这一点。如何将数组内的字符与另一个字符(如“H”)进行比较。如何将字符数组中的值与另一个字符进行比较
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char* argv[]) {
char const* const fileName = argv[1];
FILE* file = fopen(fileName, "r");
int i = 0;
char line[256];
char* str[256];
while (fgets(line, sizeof(line), file)) {
str[i]=strdup(line);
strcpy(str[i],line);
i++;
}
char tmp[256];
memcpy(tmp, str[0],strlen(str[0])+1);
if(strcmp(tmp[0],"H") == 0){
printf("%s","is h");
}else{
printf("%s","not h");
}
fclose(file);
return 0;
}
我没试过你的代码,但'tmp'被正确初始化到正确的值,你可以就可以说'TMP [0] ==“H''。 H'被转换为字符“H”的ASCII值,所以只需将该值与'tmp [0]'的ASCII值进行比较就足够了。 – SpencerD