
C言語の関数一覧のようなものは何を見たらわかるのでしょうか?
標準関数の一覧はよく見かけますが、ほかの関数の一覧はないのでしょうか?
たとえば、あるインターネット上で公開されていたソースコードには
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
#include <netinet/in.h>
#include <sys/param.h>
#include <sys/uio.h>
#include <unistd.h>
と書いてありました。
上3つは標準ライブラリにかいてありますが、その他は載ってません。
こういったsys/uio.hなどの仕様はどこで見れるのでしょうか?
よろしお願いします。
No.5ベストアンサー
- 回答日時:
思っていたより初心者の方のようですね。
下でコンパイラベンダーと書きましたが、コンパイラ開発元という意味です。他に分からない単語があればオンライン辞書などを参考に調べながら読んで下さい。
>JavaのAPIリファレンスのようなまとまったリファレンスはないのでしょうか?
Javaはsun microsystemsが開発したプログラミング言語です。sunのサイトにJavaのAPIリファレンスがあるのは当然です。JAVA1.1の頃の話ですが、XMLPerserやCryptoAPI等のサードパーティー製クラスライブラリのAPIについてはsunのサイトにはなかったと思います。
で、同様に、Cの関数についても調べたい機能があればライブラリの開発元の解説をお読み下さい。ご提示のソースコードはUnix系OSのソケット関連です。ライセンスはOSに取り込まれてますので、OSのマニュアルを参照して下さい。
C言語の関数が全て載ったマニュアルなりサイトなりがないか、という質問なら、答えは「ありません」。
>ヘッダーファイルを読もうにも、どのヘッダーファイルにどのような関数が定義されているかわからないのです。
他の方も言ってますが、逆です。
『こんな機能がないかな』と思ったら、ヘルプなりgoogleなりで検索して、当てはまりそうな関数を見つけたらその関数についての解説を読んで、その関数を使うにはどのヘッダーが必要かを知る。
普通はその解説に引数や型も載ってるので、ヘッダーファイルを読んだりはしません。
下の回答はもうちょっと上級の方を想定してました。
回答ありがとうございます。
OSによって使用する関数が違うんですね。
最初にJavaを勉強していたので、てっきりみんな一緒だとおもっていました。
OSごとに関数が異なると調べるのも大変ですね。
No.4
- 回答日時:
>一応「C言語 関数一覧」などのキーワードで自分で調べてみたのですが
へ?本気で調べる気ありますか?
ヘッダーファイル名で調べないのは何故?
普通知りたいファイル名で調べるのは
常識中の常識でしょ。
>ヘッダーファイルの一覧が、リファレンスのようにまとまっているサイトや文書などがないか、ということです。
だからなんでヘッダーファイル一覧が必要なわけ?
大事なのは関数でしょ。
とりあえず標準関数に関しては
ANSIのC言語辞書一冊買いなさい。
>このヘッダーファイルにはこのような機能をもつ関数群が定義されている、というような一覧というのはないのでしょうか?
普通は逆
必要な関数を調べてからそれに必要なヘッダーファイルを
インクルードするだけ
質問者はプログラミングという作業に向いてない
人なのかもしれませんね。
なにをやるにも明後日のことをしている。
検索方法にしても
関数とヘッダーファイルの関係にしても
関数自身ではなくてヘッダーファイルを
何故か優先したり
今後の事(学業/就職)も含めて真剣に考え直した方が
いいかもしれませんね。
No.3
- 回答日時:
このヘッダファイルを見る限り,Solariis/Linux/BSDのごく普通のもののようです.
UNIXのマニュアルページやマニュアルページの目次がオンラインで読めるWEBサイトはあちこちにありますから,それでみれば関数一覧もあります.
ちなみに,システムコールは2章,ユーザランドライブラリは3章です.
たとえば,uioに関しては,FreeBSDならマニュアルの9章のuioのセクションに多少書かれています.ヘッダファイルの内容の仕様についてはどこにも書かれてないと思います.プログラム作成上は,「○○という関数を使うには□□というヘッダをインクルードして△△というstructを使う」ってことさえ分かれば足りるので.
参考URL:http://www.freebsd.org/ja/docs.html#man
回答ありがとうございます。
OSによって使用する関数が違うんですね。
最初にJavaを勉強していたので、てっきりみんな一緒だとおもっていました。
No.2
- 回答日時:
標準関数っていっても自分で作る関数と何も変わりません。
Cコンパイラは世に沢山ありまして、標準関数っていうのは、どのCコンパイラ(C言語)でも最低限これだけは最初から使えるよっていう関数のことです。ANSIが決めました。ANSIっていうのは米国版JISです。
>標準関数の一覧はよく見かけますが、ほかの関数の一覧はないのでしょうか?
引数や型は、ヘッダーファイルを読みましょう。
解説はOSやコンパイラベンダーのヘルプを読みましょう。(linuxならman、VisualCならMSDNライブラリ)
>たとえば、あるインターネット上で公開されていたソースコードには
linuxのコードですね。
http://www.linux.or.jp/JM/INDEX/ldp.html
回答ありがとうございます。
>引数や型は、ヘッダーファイルを読みましょう。
ヘッダーファイルを読もうにも、どのヘッダーファイルにどのような関数が定義されているかわからないのです。
たとえば、このヘッダーファイルにはこのような機能をもつ関数群が定義されている、というような一覧というのはないのでしょうか?
また、引数や型をしらべるにはヘッダーファイルを読む以外に方法はないのでしょうか?
JavaのAPIリファレンスのようなまとまったリファレンスはないのでしょうか?
No.1
- 回答日時:
ここで調べる。
そもそもヘッダーファイルの仕様なんて調べてどうするの?
仕組みを知りたいの?
だったら自分で調べる事しないと
普通は関数あってのヘッダー
その関数がどのヘッダーファイルを必要としているかが
問題でしょ。
回答ありがとうございます。
一応「C言語 関数一覧」などのキーワードで自分で調べてみたのですが、出てくるのは標準関数ばかりで質問で書いたようなヘッダーファイルの中にある関数の説明や、その一覧などが見つからなかったため、質問させていただきました。
>そもそもヘッダーファイルの仕様なんて調べてどうするの?
質問の表現が正しくありませんでしたね。申し訳ないです。
僕が知りたいことは、SunのサイトにあるJavaのAPIリファレンスのように関数の一覧とその仕様、その関数が定義されているヘッダーファイルの一覧が、リファレンスのようにまとまっているサイトや文書などがないか、ということです。
学校で、基本的な文法や標準関数の使い方などは教わったので、ネットワークを使ったりするプログラムを作ってみたいと思っています。
それでインターネット上のソースコードを見ていたのですが、どうやら発展的なプログラムを作る際には標準関数以外のものを使いわないといけないようなので、それらの一覧を探しているといます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# メインプログラムに#include <algorithm>を書いて、 そのメインプログラムが // 3 2023/05/02 11:24
- C言語・C++・C# const char** p;のとき、free(p)でC4090エラーとなるのはなぜですか 3 2023/03/31 16:28
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# 並列プログラミングのπ計算について 1 2022/07/16 22:30
- C言語・C++・C# C言語のファイル入力が分かりません 2 2022/05/22 06:35
- C言語・C++・C# win10で、正確な待ち時間の作り方 6 2023/02/14 18:28
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# C++初心者です stirng 2 2022/09/20 20:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
iCloudフォトライブラリ内の画...
-
乱数の生成方法
-
python urlopen error について...
-
ituneを複数のPCにインストール...
-
フーリエ変換やFFTのプログラム
-
declaration of 'index' shadow...
-
動画像をキャプチャするプログラム
-
VX-works
-
本格的なGUIを作るのにおすすめ...
-
C言語について。
-
VS2010でC#のDLLを作成する手順
-
AJAXでSOAPを利用する定番の方...
-
vc6.0関数WNetCancelConnection...
-
Google ColaboでGUI作成
-
ど素人が勉強していくプログラ...
-
String^の^自体が何を意味して...
-
魚眼画像について
-
VB.NET とドットNET(.NET...
-
Direct3D で立体地図(鳥瞰図)...
-
フリーソフト作成環境を教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows Media Playerを開くと...
-
Google ColaboでGUI作成
-
python urlopen error について...
-
システムコールと標準ライブラ...
-
iCloudフォトライブラリ内の画...
-
本格的なGUIを作るのにおすすめ...
-
C言語について。
-
ライブラリ作成時のグローバル...
-
設定ファイルを扱うライブラリ...
-
MFCとWIN32API
-
declaration of 'index' shadow...
-
C++ 標準ライブラリの実際の中...
-
Ps+のフリープレイでDestiny2の...
-
マウスのクリックを自動で
-
LIBCMT.LIBをリンクしてコンパ...
-
お絵かきソフトプログラミング...
-
ISOイメージの作成方法について
-
boostのアンインストールについて
-
DirectX Graphics と OpenGLっ...
-
C# EXCELセルの入力規則設定に...
おすすめ情報