#include <stdio.h>
#include <string.h>
int main() {
int i, j;
char buf[20];
int NFASTATES, NSYMBOLS = 2;
char * NFATAB[40][20];
printf("Input number of States : ");
scanf_s("%d", &NFASTATES);
for (i = 0; i < NFASTATES; i++)
{
for (j = 0; j < NSYMBOLS; j++)
{
printf("Input [%d, %d] (IF NULL, INPUT \"@\") : ", i, j);
scanf("%s", buf);
if (strcmp(buf, "@") == 0)
NFATAB[i][j] = '\0';
else
NFATAB[i][j] = buf;
}
}
//NFATAB[0][0] = "01";
//NFATAB[0][1] = "1";
//NFATAB[1][0] = "2";
//NFATAB[1][1] = "2";
//NFATAB[2][0] = "";
//NFATAB[2][1] = "2";
printf("\nNFA Table\n");
printf(" | 0| 1|");
printf("\n------+------+------|");
printf("\n");
for (i = 0; i < NFASTATES; i++)
{
printf("%6d|", i);
for (j = 0; j < NSYMBOLS; j++)
{
printf("%6s|", NFATAB[i][j]);
}
printf("\n");
};
return 0;
}
이 코든데 for문 지우고 주석처리한 부분 넣으면 정상적으로 작동함 근데 input 받아서 처리하려고 하면 자꾸 마지막값으로 통일되서 출력됨
이거 대체 무슨 문제임 ㅜㅜ 5시간동안 이것만 붙잡고 있다.
스트링말고 캐릭터로 넣어 " => ' - dc App
strdup이 나을듯 - dc App