サーバーとクライアントで足し算を行うプログラムを実行するとサーバーからの計算結果が返ってきません。ソースコードは以下に示します。
クライアントのプログラム
#include <sys/types.h>
#include <sys/socket.h>
#include <stdio.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
int main(void)
{
int sockfd ;
int tolen , fromlen ;
struct sockaddr_in to_address , from_address ;
int result ;
int ch[3] ;
sockfd = socket(AF_INET,SOCK_DGRAM,0);
to_address.sin_family = AF_INET ;
to_address.sin_addr.s_addr = INADDR_ANY ;
to_address.sin_port = htons(9734) ;
tolen = sizeof(to_address);
bind(sockfd , (struct sockaddr *)&to_address , tolen);
printf("A = ");
scanf("%d",&ch[0]);
printf("B = ");
scanf("%d",&ch[1]);
sendto(sockfd , ch , sizeof(ch) , 0 , (struct sockaddr *)&to_address , tolen);
recvfrom(sockfd , ch , sizeof(ch) , 0 , (struct sockaddr *)&from_address , &fromlen);
printf("A + B = %d \n",ch[2]);
close(sockfd);
exit(0);
}
サーバーのプログラム
#include <sys/types.h>
#include <sys/socket.h>
#include <stdio.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
int main(void)
{
int ch[3] ;
int sockfd ;
int tolen , fromlen ;
struct sockaddr_in to_address ;
struct sockaddr_in from_address ;
sockfd = socket(AF_INET,SOCK_DGRAM,0);
to_address.sin_family = AF_INET ;
to_address.sin_addr.s_addr = INADDR_ANY ;
to_address.sin_port = htons(9734) ;
tolen = sizeof(to_address);
bind(sockfd , (struct sockaddr *)&to_address , tolen);
while(1) {
printf("server waiting\n");
recvfrom(sockfd , ch , sizeof(ch) , 0 ,
(struct sockaddr *)&from_address , &fromlen);
ch[2] = ch[0] + ch[1] ;
sendto(sockfd , ch , sizeof(ch) , 0 , (struct sockaddr *)&from_address , fromlen);
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# 現在プログラムを作っているのですが、実行したときに写真のように結果が表示されるのですが、これを CH 2 2023/01/18 16:22
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# スタックフレームの消滅 6 2023/05/20 12:33
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ギ酸エチルと酢酸メチルは構造...
-
C4H8の構造異性体を考えるとき...
-
C言語文字数4つカウント
-
化学の問題です C4H10O の分子...
-
ペンテンの構造異性体
-
C4H10Oの構造式7種類を教えてく...
-
アリルラジカルのエネルギー準位
-
単斜硫黄から斜方硫黄への変化
-
ヘプタン異性体の構造式
-
ベンゼンのlewis構造式
-
ナフトールの配向性
-
高校の化学についてです。 SO2...
-
酢酸の化学式がわかりません
-
ベンジル位とは何なのでしょうか?
-
特性比とは何ですか?化学系の...
-
サリチル酸の滴定
-
2,6-ジベンザルシクロヘキサノ...
-
有機化学に良く出てくる記号 P...
-
白モツの煮込みで出る苦い汁
-
水酸基価?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ペンテンの構造異性体
-
ギ酸エチルと酢酸メチルは構造...
-
エタノールの三重点は?
-
エクセル VBAで、文末の指定文...
-
アルカン は異性体の数がブタン...
-
化学の問題です C4H10O の分子...
-
構造異性体について
-
C4H10Oの構造式7種類を教えてく...
-
C4H8の構造異性体を考えるとき...
-
ch3c(ch3)2oh 構造式わかる人い...
-
ヘプタン異性体の構造式
-
水酸基価?
-
濃度換算について(mg/m3→ppm)
-
エンコードとは?
-
高校の化学についてです。 SO2...
-
「元」ですか?「基」ですか?
-
単斜硫黄から斜方硫黄への変化
-
質問と関係ない回答
-
【化学・官能基】カルボキシ基...
-
生化学と生理学
おすすめ情報