C语言,关于切割这字符串
/*我当前代码*/
#include<stdio.h>
struct handinfee
{
char sonbr[20];
char msisdn[11];
char staffid[10];
int fee;
int flag;
}
handinfee[50],*hp;
main()
{
FILE *fp;
char str[1024];
// hp=handinfee;
if((fp=fopen("abc","rt"))==NULL)
{
printf("\nCannot open file strike any key exit!");
exit(1);
}
fgets(str,1024,fp);
printf("%s\n",str);
fclose(fp);
}
/*文件abc内容*/
SONBR=10504277915010130233&MSISDN=XXXX&staff_id=7910000sm2&FEE=3132&FLAG=1;
SONBR=10504297915010130715&MSISDN=XXXX&staff_id=7910000sm2&FEE=0&FLAG=1;
SONBR=10504297915010130716&MSISDN=XXXX&staff_id=7910000sm2&FEE=2000&FLAG=1;
SONBR=10504307915010130873&MSISDN=XXXX&staff_id=7910000sm2&FEE=2000&FLAG=1;
...
/*说明:不会超过50行*/
上面的程序,现在是读文件abc的第一行并放到char str 里了,现在我想把这行里所包含的信息放到struct handinfee 里,但我不知道怎么样才可以正确的切割这个字符串,C不支持字符串类型,我也没找到合适的库函数可以用,所以来这里问问,谢谢了!