이 데이터를 복사하고 싶습니다 @ 822! 172.28.6.137! 172.28.6.110! 5000! 6000 | 이 구조체에 파일 input_data를 작성하면 파일에서 input.key로 822를 복사하고 172.28.6.137에서 src_ip로 복사합니다! 파일의 데이터를 구조체의 다음 멤버로 복사해야합니다. 어떻게해야합니까?파일에서 읽고 구조에 저장하십시오
struct input_par
{
char key[5];
char src_ip[15];
char dst_ip[15];
char src_port[5];
char dst_port[5];
};
main()
{
int i;
char ch;
FILE *fp;
struct input_par input;
fp = fopen("input_data","r");
if(fp == NULL)
printf("file open failed \n");
else
{
ch = fgetc(fp);
if(ch=='@')
printf("data is valid\n");
fseek(fp,1,1);
while(ch!='|')
{
input.key =
input.src_ip =
input.dst_ip =
input.src_port =
input.dst_port =
}
}
fscanf를 사용하는 것처럼 말했지만 오류 오류가 발생합니다. 'char [5]'형식에서 'int'형식으로 할당 할 때 호환되지 않는 형식이고이 구조체에 많은 데이터를 입력해야하므로 fscanf를 사용하여 완료 할 수 있습니다. @ 822와 같은 루프에 넣음으로써! 172.28.6.137! 172.28.6.110! 5000! 6000 | @ 832! 172.28.6.17! 172.28.6.110! 5003! 600 | @ 852! 172.28.6.17! 172.28.6.110! 5003! 600 | 그리고 때마다 나는이 데이터를 입력하고 다른 함수에 구조체를 전달해야한다. – sandeep