Cでネットワークプログラミングの勉強をしているのですが
IPアドレスをin_addr型で保存しています。
IPアドレス、具体的には「192.168.0.1」というのをchar型の配列で
ip[0]="192"
ip[1]="168"
ip[2]="0"
ip[3]="1"
と言う風に変えたいのですが何か関数を使って出来ないでしょうか。
in_addr型をchar型でキャストした場合は
ip[0]="1"
ip[1]="9"
ip[2]="2"
と言うような感じになってしまいました。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
ip[0]="192"
という風に変えたいと書かれておりますが、ip[]というのはどう宣言されているのでしょうか。
char ip[32];
のように宣言されているのなら、それはあくまでも「charの配列」なので、ip[0]には一つのcharしか代入できず、
ip[0]="192"
という形で入れることはできません。大きさが4つの配列で実現するなら、
ip[0]=192
という形で文字列でなくunsigned char型の数値として代入するか、
char ip[4][4];
のように「文字列の配列」つまり「charの配列の配列」と宣言しないといけません。
文字列として'.'を抜いたそれぞれの値を取り出したいのなら、in_addr型の変数をinとすると、inet_ntoa()を使って、
char *ip[4];
char ip_str[16];
と宣言しておき、
strcpy(ip_str,inet_ntoa(in));
ip[0] = strtok(ip_str,".");
ip[1] = strtok(ip_str,NULL);
ip[2] = strtok(ip_str,NULL);
ip[3] = strtok(ip_str,NULL);
とすればいいのではないでしょうか。
参考URL:http://www.linux.or.jp/JM/html/LDP_man-pages/man …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux raspberry piを使ったWebサーバー制作をしています、接続するネットワークを変更したときに 1 2023/01/09 15:57
- VPN 接続のたびにIPが変わるVPNサービスが知りたい 2 2022/06/27 02:34
- FTTH・光回線 グローバルIPアドレスの変更について 1 2022/04/23 05:32
- ネットワーク 一台のサーバーに複数個のIPアドレスを追加出来る事は知っていますが、具体的にどうやるのでしょうか? 4 2022/11/03 20:12
- Wi-Fi・無線LAN 無線ルーターのIPアドレスは、iPhoneのように簡単に変更できる??? 2 2022/04/02 19:00
- その他(プログラミング・Web制作) このプログラミング誰か教えてくれませんか 4 2022/04/29 15:56
- SoftBank(ソフトバンク) スマホ ipアドレス 4 2022/08/24 01:26
- 固定IP MACアドレスはLAN内で相手を特定するアドレスですか? PCから監視カメラを閲覧するときに、セグメ 3 2022/07/23 09:04
- Wi-Fi・無線LAN iPhoneのIPアドレスは機内モードをオンで変わるように、無線ルーターも何かの方法で変更できる? 2 2022/04/02 14:37
- ハッキング・フィッシング詐欺 自分のIPアドレスをGoogle検索しようとしたら「数字の羅列(IPアドレス)を装ってあなたの情報を 2 2022/04/08 18:36
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vbsでテキストファイル内の文字...
-
excelの、ある数式内の{}の意...
-
VBAのWorksheetFunctionの引数...
-
エクセルへのデータの貼付時に...
-
配列の値を置換するにはどうす...
-
COLUMN(1:1)の意味を教え...
-
初心者プログラミング
-
in_addrからchar型の文字列の変換
-
copyRecordsetの数値16桁以上に...
-
VBAで配列内のマッチ
-
VB.NET 2つの配列を連動して並...
-
列数の多いエクセルのデータを...
-
数値を浮動小数点32bitHEXコー...
-
VB6で配列を文字列に変換する方...
-
エクセル、この関数の意味は?
-
VB.NET 2次元配列
-
VBSで特定の文字列が含まれる場...
-
RichTextBoxの改行を認知してく...
-
VB 配列の内容をファイルに書...
-
VBAでダブルコーテーション入り...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelの、ある数式内の{}の意...
-
配列の値を置換するにはどうす...
-
vbsでテキストファイル内の文字...
-
エクセルへのデータの貼付時に...
-
数値を浮動小数点32bitHEXコー...
-
COLUMN(1:1)の意味を教え...
-
初心者が簡単なPowerShellスク...
-
VBAのWorksheetFunctionの引数...
-
VBSで特定の文字列が含まれる場...
-
VB 配列の内容をファイルに書...
-
初心者プログラミング
-
VB6で配列を文字列に変換する方...
-
VBAで配列に文字列が入らない?
-
copyRecordsetの数値16桁以上に...
-
【エクセル】 関数による電子...
-
エクセル、この関数の意味は?
-
○桁にある数値を取得する VB.N...
-
RichTextBoxの改行を認知してく...
-
rubyによる2次元配列形式のデー...
-
ruby 1.8.7 で、多次元配列をソ...
おすすめ情報