c语言求助 帮我看看,求大神,错误是syntax error before'&' token,急
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言求助 帮我看看,求大神,错误是syntax error before'&' token,急相关的知识,希望对你有一定的参考价值。
void read_files()
FILE *fp;
int i;
int j;
char adr[1000];
printf("请输入读取的文件地址:\n\n地址输入格式:例如d:\\\\Student.txt");
scanf("%s",adr);
printf("读取中\n");
if(fp=fopen(adr,"r"))
fscanf(fp,"%d",&student_count);
for(i=0;i<student_count;i++)
fscanf(fp,"%ld%s%d",&s[i].num.&s[i].name,&s[i].lesson_count);
for(j=0;j<s[i].lesson_count;j++)
fscanf(fp,"%ld%s%d%f",&s[i].l[j].lesson_num,&s[i].l[j].lesson_name,
&s[i].l[j].lesson_score,&s[i].l[j].lesson_num1);
printf("读取成功\n");
fclose(fp);
else
printf("读取失败\n");
为何我重新打了一遍就正确了
改为:fscanf(fp,"%ld%s%d",&s[i].num,&s[i].name,&s[i].lesson_count);
主要是符号写错了:&s[i].name前面的“.”需要改为"," 参考技术B for循环中
fscanf(fp,"%ld%s%d",&s[i].num.&s[i].name,&s[i].lesson_count);这里错了, 改为
fscanf(fp,"%ld%s%d",&s[i].num,s[i].name,&s[i].lesson_count);追答
应该是第一次打的时候手误了,第二次打的时候没手误了
参考技术C fscanf(fp,"%d",&student_count);有错误大神们帮我看看程序吧,linux C语言编程 隐式声明和strlen出错,改为sizeof后,段错误,
/*ex8-2server.c*/
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#define LISTENQ 5
#define MAXLINE 512
int main()
int listenfd, connfd;
socklen_t len;
struct sockaddr_in servaddr, cliaddr;
char buff[MAXLINE];
time_t ticks;
listenfd=socket(AF_INET, SOCK_STREAM,0);
if(listenfd<0)
printf("Socket created failed.\n");
return -1;
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(6666);
servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
if(bind(listenfd, (struct sockaddr *)&servaddr, sizeof(servaddr))<0)
printf("bind failed.\n");
return -1;
printf("listening....\n");
listen(listenfd, LISTENQ);
while(1)
len=sizeof(cliaddr);
connfd=accept(listenfd,(struct sockaddr *)&cliaddr, &len);
printf("connect from %s, port %d \n",inet_ntoa(cliaddr.sin_addr.s_addr),ntohs(cliaddr.sin_port));
ticks=time(NULL);
sprintf(buff,"% .24s \r \n",ctime(&ticks));
write(connfd,buff,strlen(buff));
close(connfd);
/*ex8-2client.c*/
#include <stdio.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#define MAXBUFFSIZE 256
#define PORT 6666
#define HOST_ADDR "127.0.0.1"
int main(int argc, char *argv[])
int sockfd,n;
char recvbuff[MAXBUFFSIZE];
struct sockaddr_in servaddr;
sockfd=socket(AF_INET,SOCK_STREAM,0);
if(sockfd<0)
printf("Socket created failed.\n");
return -1;
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(6666);
servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
printf("connecting...\n");
if(connect(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr))<0)
printf("Connect server failed.\n");
return -1;
while((n=read(sockfd,recvbuff,MAXBUFFSIZE))>0)
recvbuff[n]=0;
fputs(recvbuff,stdout);
if(n<0)
printf("Read failed!\n");
return -2;
return 0;
这是客户机 服务器连接程序,通过套接字建立连接,客户机使用流套接字向服务器请求日期和时间,服务器在收到请求后,回答请求并显示出客户的地址,但是在终端运行后,服务器提示listening,,,,并提示段错误,客户端只提示connecting.........无法正常运行
以上是关于c语言求助 帮我看看,求大神,错误是syntax error before'&' token,急的主要内容,如果未能解决你的问题,请参考以下文章
大神们帮我看看程序吧,linux C语言编程 隐式声明和strlen出错,改为sizeof后,段错误,
VC编译C语言出现syntax error : missing ')' before ';'错误
求大神帮忙看看c语言编程哪里出问题了,文件始终是空白,无法写入。