掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.26025

sendto関数についての質問
投稿者---tongari(2006/02/06 16:44:58)


sendto関数について質問があります。

sendto関数は、
ssize_t sendto(int s, const void *msg, size_t len, int flag,\
const struct sockaddr *to, socklen_t socklen);

のように定義されているますが、第2引数に構造体を使用する場合の
記述方法がわかりません。

struct udp_data
{
int data_num;
char data[256];
};

としたとき、どのようにすれば、構造体を第2引数に入れることが
できるのでしょうか?

ご存知のかた、教えてください。


環境    : redhat8.0
コンパイラ : gcc


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:sendto関数についての質問 26026 Blue 2006/02/06 16:51:41


No.26026

Re:sendto関数についての質問
投稿者---Blue(2006/02/06 16:51:41)


msg は送りたいデータのバイト列
len は送りたいデータの長さ

なので、

struct udp_data
{
    int data_num;
    char data[256];
};

struct udp_data a;

の場合

第二引数に ( void* )&a を 第三引数に sizeof( a ) を指定するのかな。
( void* のキャストはいらんかも)



この投稿にコメントする

削除パスワード

No.26027

Re:sendto関数についての質問
投稿者---tongari(2006/02/06 16:54:54)


Blueさん
すばやい解答有難うございます。


早速、確認してみます。


この投稿にコメントする

削除パスワード

No.26028

解決しました
投稿者---tongari(2006/02/06 17:18:00)


Blueさん
有難うございます、解決しました。

第2引数は、void*のキャストなしで大丈夫でした。


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧