ソケットを使って配列を送受信しているのですがうまくいきません.
サーバ側でセグメンテーション違反が起こってしまいます.
原因をいろいろ調べているのですが混乱してしまっています.
お力をお貸しください.
(fprintfの手前までの動作は確認していますのでソケット等に問題はありません)
C
1struct sequence { 2 unsigned short seq; 3 unsigned short num; 4 char msg[32]; 5}; 6 7 struct sequence *se = (struct sequence *) malloc(sizeof(struct sequence)); 8 ssize_t len; 9 10 for(;;) { 11 if((len = recv(acc, &se, sizeof(struct sequence), 0)) == -1) { 12 perror("recv"); 13 break; 14 } 15 16 fprintf(stderr,"seq = %u:msg = %s",seq->seq, seq->msg); 17 seq->seq++; 18 if((len = send(acc, &seq, sizeof(struct sequence), 0)) == -1) { 19 perror("send"); 20 break; 21 } 22 } 23
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/02/27 13:05