首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

用fopen打开一个结构体指向的字符串,出现异常:参数无效

2013-11-21 
用fopen打开一个结构体指向的字符串,出现错误:参数无效typedef struct Inf{char *szNamelong long llStar

用fopen打开一个结构体指向的字符串,出现错误:参数无效
typedef struct Inf
{
    char *szName;
    long long llStart;
    long long llEnd;
    typedef struct *pNext;
} Inf;

.....

//结构体中存放的数据是
Inf *p;
p->szName = strdup(Name);
p->llStart = 100;
p->llEnd = 1000;
p->pNext = NULL

......

FILE *pTemp;
Inf *i;

pTemp = fopen (i->szName, "r");
fprintf(stderr, "%s \n", strerror(errno));

.......

输出的是:参数无效,其指针地址为NULL
[解决办法]
i未初始化直接拿来用,肯定不行,搞不好程序直接退出了。
[解决办法]

引用:
其中i并不是被分配空间,而是被另一个结构给赋值的指针

那也可以的!

注意widows下路径 要用\\
例如

FILE * pf = fopen("D:\\test.txt", "r");

热点排行