没判断user.userid[0]是不是\0
你确定result.txt是空文件?还是最开始有很多空行?
【 在 pplong2000 (hiker) 的大作中提到: 】
: 我编写的程序如下:(在libBBS/ucache.c中,在头文件中声明了的)
: int searchunday(long daynum)
: {
: int j;
: FILE *fp,*fpp;
: struct userec user;
: fpp =fopen("/usr/local/bbs/.PASSWDS","rb");//安装目录
: fp =fopen("/home/bbs/result.txt","a+");
: if(fp=NULL)return 0;
: j =0;
: while(!feof(fpp))
: { fread(&user, sizeof(user), 1, fpp);
: if((time((time_t *)NULL)-user.lastlogin)/(24*60*60)>=daynum)
: {
: fwrite(&user,sizeof(user),1,fp);
: j=j+1;
: }
: }
: fclose(fp);
: fclose(fpp);
: return j;
: }
: 在phplib/phpbbs.user.c中加了:
: PHP_FUNCTION(bbs_getunday)
: {
: long s;
: long num;
: if (zend_parse_parameters(1 TSRMLS_CC, "l", &s) != SUCCESS) {
: WRONG_PARAM_COUNT;
: }
: num =searchunday(s);
: RETURN_LONG(num);
: }
: 在phplib/phpbbs.user.h中加了:
: PHP_FUNCTION(bbs_getunday);
: PHP_FE(bbs_getunday, NULL) \
: 但是调用的时候出现问题,函数是可以调用的,因为那个result.txt文件创建了,但是里面没有内容,而且在php代码中调用bbs_getunday没有返回值,是怎么回事啊!大家帮忙分析一下.
--
FROM 128.12.150.*