c언어 질문입니다
글쓴이: gayeon298 / 작성시간: 수, 2020/06/17 - 9:37오후
void main(int argc, char* argv[])
{
FILE* source_file;
int i;
struct tokenType token;
if (argc != 2) {
fprintf(stderr, "Usage : scanner <source file name>\n");
exit(1);
}
if ((source_file = fopen(argv[1], "r")) == NULL) {
fprintf(stderr, "%s file not found \n", argv[1]);
exit(-1);
}
do {
for (i = 0; i < ID_LENGTH; i++)
id[i] = ' ';
token = scanner(source_file);
fprintf(stdout, "Token ---> ");
if (token.number == 5) {
for (i = 0; i < ID_LENGTH; i++)
fprintf(stdout, "%c", id[i]);
fprintf(stdout, ": (%d, %d)\n", token.number, token.value.num);
}
else if (token.number == 4) {
for (i = 0; i < ID_LENGTH; i++)
fprintf(stdout, "%c", id[i]);
fprintf(stdout, ": (%d, %s)\n", token.number, token.value.id);
}
else {
for (i = 0; i < ID_LENGTH; i++)
fprintf(stdout, "%c", id[i]);
fprintf(stdout, ": (%d, 0)\n", token.number);
}
} while (!feof(source_file));
fclose(source_file);
}파일을 읽어오지 못하는데 왜 그런건가요? 소스코드가 잘못되었나요?


컴파일은 되나요?
#include <stdio.h> #include <stdlib.h> int main(int argc, char* argv[]) { FILE* source_file; int i; struct tokenType token; if (argc != 2) { fprintf(stderr, "Usage : scanner <source file name>\n"); exit(1); } if ((source_file = fopen(argv[1], "r")) == NULL) { fprintf(stderr, "%s file not found \n", argv[1]); exit(-1); } do { for (i = 0; i < ID_LENGTH; i++) id[i] = ' '; token = scanner(source_file); fprintf(stdout, "Token ---> "); if (token.number == 5) { for (i = 0; i < ID_LENGTH; i++) fprintf(stdout, "%c", id[i]); fprintf(stdout, ": (%d, %d)\n", token.number, token.value.num); } else if (token.number == 4) { for (i = 0; i < ID_LENGTH; i++) fprintf(stdout, "%c", id[i]); fprintf(stdout, ": (%d, %s)\n", token.number, token.value.id); } else { for (i = 0; i < ID_LENGTH; i++) fprintf(stdout, "%c", id[i]); fprintf(stdout, ": (%d, 0)\n", token.number); } } while (!feof(source_file)); fclose(source_file); return 0; }세벌 https://sebuls.blogspot.kr/
댓글 달기