我正在尝试设置 ac 捕获标志挑战,但我无法让 if 语句正常工作。
我有一个文本文件,其中包含以下行:
flag{alm0st_th3r3}
这会检查我的字符短语,它是相同的,所以应该打印出答案,如果没有打印出错误。
我已经尝试了多种方法,但看不出哪里出错了。和只是确认两者是相同的printf(flagText)
。printf(phrase)
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int main()
{
FILE *flag;
flag = fopen("flag.txt", "r");
if (flag == NULL)
{
puts("Error: Opening file: Maybe you are in the wrong Zm9sZGVyIG9yIGRpcmVjdG9yeSAtIHRoZXJlIGFyZSAyMCBhZnRlciBhbGwh ?");
return 1;
}
char flagText[100];
fgets(flagText, 100,flag);
fclose(flag);
printf(flagText);
char phrase[100] = "flag{alm0st_th3r3}";
printf(phrase);
printf("\n");
if (flagText == phrase )
{
printf("9mLf%BkqX6@:Cp5FC/!%D)5O@Dbkc");
return 0;
}
else
{
printf("Sorry - wrong!!");
return 1;
}
}