Cygwin の APIが載っているホームページや参考書を探しています。

各APIの機能や引数、戻り値の説明が書かれているものです。

ご存知でしたら、URLや参考書名を教えてください。

よろしく御願いします。

A 回答 (1件)

http://www.cygwin.com/cygwin-api/cygwin-api.html
cygwinオフィシャルで。

え、日本語のが欲しい?(^^;
あるのかなあ....って、あっさり見つかった(汗
参考URLがそうです。riueさんに感謝。

参考URL:http://www.sixnine.net/cygwin/cygwin-doc/cygwin- …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QグーグルAPIとは?

vbaで
http://www.excellenceweb.net/vba/api/what_windows_api.html
このようなAPIは良く使っているのですが
ネットでapiについて検索すると
「グーグルAPI」と言う言葉をよく見かけるのですが
これは私が使っているvbaのAPIとは違う意味なのでしょうか?

二つの違いがよくわかりません。
というかグーグルAPIが何なのかよくわかりません。

Aベストアンサー

おっしゃっているGoogle APIというのは、Googleのサービスにアクセスするための機能を提供するもののことでしょう。

一般に、プログラミング言語では、プラットフォーム(OS)内の機能にアクセスするための関数や命令などをまとめてAPIといっています。同様に、ネットワーク上で公開されている各種サービスにアクセスするための関数・命令などをAPIと呼ぶこともあります。Google APIというのは、Googleが提供する各種サービス(Google Map、Gmailなど)にアクセスする機能で、Webページ内からJavaScriptを使って利用したり、あるいはサーバーサイドプログラム内からPythonやJavaなどで利用したりします。

APIとはApplication Programming Interfaceの略であり、従来はアプリケーションといえばパソコン上にあるプログラムのことを指していましたが、今ではWebブラウザ上で動く、いわゆるWebアプリケーションというのもアプリケーションの一種として使われています。ですから、「Webアプリケーションのプログラムをするための諸機能」ということでAPIと呼ぶのでしょうね。

おっしゃっているGoogle APIというのは、Googleのサービスにアクセスするための機能を提供するもののことでしょう。

一般に、プログラミング言語では、プラットフォーム(OS)内の機能にアクセスするための関数や命令などをまとめてAPIといっています。同様に、ネットワーク上で公開されている各種サービスにアクセスするための関数・命令などをAPIと呼ぶこともあります。Google APIというのは、Googleが提供する各種サービス(Google Map、Gmailなど)にアクセスする機能で、Webページ内からJavaScriptを使って...続きを読む

QC言語(Cygwin)がよくわかる参考書&問題集教えてください

初心者によくわかるプログラミングの参考書&問題集を教えてください。自分で読んで自分で解けるのがあれば教えてください。書くところ間違ってないですよね。

Aベストアンサー

 あなたがどれくらい理解していて、どれくらいの理解力を持っているのか、あなたでさえわからないでしょう。ということは、あなたが自分で大きめの本屋に行って、片っ端から流し読みし、自分にあったものを探す以外、あなたが『自分で読んで自分で解ける』ものを見つけることはできないと思うのですが、いかがでしょう?

 あなたが今、理解できるかどうかはともかく、『プログラミング言語C』[ISBN4-320-02483-4]は必読です。

QAPIにまつわる言葉の言い方

APIにまつわる言い方で教えていただきたい意味があります。

(1)Eclipse で API を叩く → Android開発ならベースがJavaだからJava以外の言語でメソッドを呼び出すイメージ ですか?

(2)ネイティブAPI → 機械語で書かれたAPIということですか?

以上よろしくお願いします。

Aベストアンサー

う~ん、APIという言葉の定義は難しいすね。

私の解釈ではAPI(Aplication Program Interface)はSPI(Service Provider Interface)の対義語となる。つまり、APIという言葉はかなり広い意味と捕らえている。つまり、Javaのコアパッケージ(java.langとかjava.ioとか)に用意されてるクラス群、メソッド群もAPIだし、私やあなたが自作のユーティリティクラスを作ったとしてもそれらは全部APIだ。
もっと広い定義ではSPIもAPIの一種と捕らえる事もできようが、以下のような階層構造をとるときにライブラリーがライブラリーを呼ぶプログラムに対して提供するのがAPI、ライブラリーが依存する個別の実装に提供するのがSPIと私は思っている。

・APIの例
私やあなたが作るプログラム
 |
 | ←API
 |
android.jarとかapache-commons-logging.jarとかlibmozc.soとか

・APIとSPIの例
ADOでDBアクセスしたい私やあなたが作るプログラム
 |
 | ←API
 |
Microsoft ActiveX Data Object(ADO)
 |
 | ←SPI
 |
oracle oledb provider(Oracle OCI経由でOracle Databaseへ)


ということで
(1)APIを叩く=ライブラリーの機能を呼び出す事すべて。Java to Javaだろうが、VB to CだろうがGroovy to JavaだろうがJava to ネイティブだろうが全部ひっくるめてAPIを叩くと表現している。

(2)ネイティブAPI=私も同じ解釈。C言語などで書かれ、OSやCPUに対してネイティブに動作するライブラリーを呼び出す口をネイティブAPIと私は考えている。

う~ん、APIという言葉の定義は難しいすね。

私の解釈ではAPI(Aplication Program Interface)はSPI(Service Provider Interface)の対義語となる。つまり、APIという言葉はかなり広い意味と捕らえている。つまり、Javaのコアパッケージ(java.langとかjava.ioとか)に用意されてるクラス群、メソッド群もAPIだし、私やあなたが自作のユーティリティクラスを作ったとしてもそれらは全部APIだ。
もっと広い定義ではSPIもAPIの一種と捕らえる事もできようが、以下のような階層構造をとるときにライブラリーがライブラ...続きを読む

Q(Win32 API)LB_GETITEMDATAメッセージの戻り値

例えば、LB_HASSTRINGSスタイルのリストボックスから
SendMessage(hListBox, LB_GETITEMDATA, 0, 0);
として、リストボックスの0番目の文字列を取得したいときに、戻り値はどんな値でどのように格納すればよいのでしょうか?

英語のMSDNを見たところ、LB_ADDSTRINGやLB_INSERTSTRINGで設定した値が返る、というようなことが書かれていますが、

strcpy(CHAR testStr[1000], SendMessage(hListBox, LB_GETITEMDATA, 0, 0));
とすると「問題が発生したため終了」となって、

LPSTR testStr = SendMessage(hListBox, LB_GETITEMDATA, 0, 0);
とすると、
MessageBox(NULL, testStr, NULL, MB_OK);
で試しに表示してみると、何も表示されないメッセージボックスが表示されます。

ソースだけでもいいのでお願いします。

例えば、LB_HASSTRINGSスタイルのリストボックスから
SendMessage(hListBox, LB_GETITEMDATA, 0, 0);
として、リストボックスの0番目の文字列を取得したいときに、戻り値はどんな値でどのように格納すればよいのでしょうか?

英語のMSDNを見たところ、LB_ADDSTRINGやLB_INSERTSTRINGで設定した値が返る、というようなことが書かれていますが、

strcpy(CHAR testStr[1000], SendMessage(hListBox, LB_GETITEMDATA, 0, 0));
とすると「問題が発生したため終了」となって、

LPSTR testStr = SendMessage(...続きを読む

Aベストアンサー

>英語のMSDNを見たところ、LB_ADDSTRINGやLB_INSERTSTRINGで設定した値が返る、というようなことが書かれていますが、

えー?そんなこと書かれてないですよ(^^;
このメッセージはアイテムに関連付けた32ビット値を取得するもので、文字列を取っくるのが目的なら
LB_GETTEXT 使いましょう。

LB_GETITEMDATA / LB_SETITEMDATAはそのアイテムにユーザ定義の何らかの32bit値を保存、取得する場合に使います。例えば構造体のアドレスとか…。

QAPIとMFC

WindowsでC言語で書けて(利用できて)無料のものがAPI、C++で使えて有料なものがMFC
だから、アマチュアプログラマーは、APIが使いこなせるのならば、APIを使ってプログラムを
書いたほうがいい

という理解で正しいでしょうか。

ここでAPIと書いたのはWin 32 APIのことです。

Aベストアンサー

有料=プロが使う物、ではないと思います。
・MFCはC++用のライブラリなので、C言語しかできないのであれば使えない。
・そもそもVisualStudioの有料版を持っていないとMFCが入っていないから使えない。
という事実があるだけかと。
なので、それなりの規模のプログラムを書くつもりであるのなら、MFCを使ったほうが保守性が高まる(はずな)ので、アマチュアでも普通に使えば良いと思います。
ただし、MFCはライブラリ(フレームワーク)自体に癖があるので、それを勉強するのにまた一苦労する必要がありますが。

>将来的にはWTLを利用したいのですが、WikiにはWTLはAPIと書いてありますが
>C++用テンプレートなのでしょうか(初歩的な質問かも知れませんがC++はほとんど分からないので)

C++のテンプレートという機能を用いて書かれたライブラリです。
なのでC++でしか利用できません。

C++が使えるであれば、MFCやWTL以外にも色々ライブラリがあるのですが、使えるのがC言語だけとなるとAPIを直接叩くしか無いかなぁと思います。

参考URL:http://next1.cc.it-hiroshima.ac.jp/CPPPUBLISH/node14.html

有料=プロが使う物、ではないと思います。
・MFCはC++用のライブラリなので、C言語しかできないのであれば使えない。
・そもそもVisualStudioの有料版を持っていないとMFCが入っていないから使えない。
という事実があるだけかと。
なので、それなりの規模のプログラムを書くつもりであるのなら、MFCを使ったほうが保守性が高まる(はずな)ので、アマチュアでも普通に使えば良いと思います。
ただし、MFCはライブラリ(フレームワーク)自体に癖があるので、それを勉強するのにまた一苦労する必要がありますが。

...続きを読む

Q参照型の変数をポインタ引数を持つ関数に引数を書く方法

C++の参照を使って以下のソースを試したのですが、
memmoveの引数のところでエラーが出ます。
memmoveの引数はポインタ型で合いません。
実体コピーしたい場合、どのようにすればよいのでしょうか?

const AA &aとすれば、a自体が関数内で書き換わる心配がないので、
C++の参照型は、ポインタより安全と理解しているのですが
その認識は間違っていないでしょうか?


struct aa{
int x;
int y;
}AA;

void test(AA &a)
{
AA b;
memmove(b, a, sizeof(AA));
}

void main(){
AA c;
test(c);
}

Aベストアンサー

> 実体コピーしたい場合、どのようにすればよいのでしょうか?

単純に代入する。

void test(AA &a)
{
AA b;
a = b;
}

(今回の例なら大丈夫ですが)C++でmemcpyとかmemmoveとかをむやみに使うと危険だと思います。(C言語の遺産です)
なお、memmoveの引数はポインタを渡す必要があります>マニュアル参照。

> const AA &aとすれば、a自体が関数内で書き換わる心配がないので、

これはそう。

> C++の参照型は、ポインタより安全と理解しているのですが

でも、ポインタでも const AA* const aなどできるので、
直接の理由にはならない。

> その認識は間違っていないでしょうか?
ゆえに、間違いを含んでいる。

QGoogle Map APIを使う場合はAPIキーは必要でしょうか

Google Map APIを使う場合はAPIキーは必要でしょうか

と言うのは、APIキーを使わないでも動いている様ですが。
何処がどう違うのかが分からない。

また、この現在のAPIのバージョンはどうやって知る事が出来
るのでしょうか。

Aベストアンサー

V2の時は必要でしたが、V3に切り替わった当初は不要とされていました。
その後、現在は必要とされるように再度変わりました。
https://developers.google.com/maps/documentation/javascript/tutorial

以下より抜粋
https://developers.google.com/maps/documentation/javascript/get-api-key
『All JavaScript API applications require authentication using an API key.』

当初の名残で、今のところはkey無しでも動作するようですが、そのうちにしなくなるかも・・・


>それとも記事が古いのか、分からなかった物ですから。
ネット上の第三者の記事に右往左往しているよりも、配布元のgoogleを調べるのが常道でしょう。

Q引数 戻り値 return文について

今、C言語を初めて勉強してます。

勉強していて、引数と戻り値、return文

についてよくわかりません。

どなたか詳しく素人にもわかるように教えて

頂けないでしょうか?よろしくお願いします。

Aベストアンサー

まず、関数とは何らかの処理をして結果を返してくれるものです。わざとらしい例ですが二つの数を足してその結果を返す関数を見てみましょう。

#include <stdio.h>

int add( int hoge, int piyo ){
return hoge + piyo;
}

int main(void){
int data;

data = add( 253, 434 );
printf( "%d", data );

return 0;
}

見てわかると思いますが、引数とは関数内の処理に使うデータです。
このデータは関数を呼び出すときに与えます。

add( 253, 434 )

すると与えられたデータは関数に渡され仮引数と言うものに格納されます。
この例では hoge に 253、piyo に 434 が格納されます。

int add( int hoge, int piyo ){

この仮引数は普通の変数のように使うことが可能なのです。

hoge + piyo

そしてこの結果を戻り値として return 文で返してやります。

return hoge + piyo;

返すとは具体的にどこへ返すのかと言うと呼び出したところへです。
ここでは main 関数内の呼び出し元です。

data = add( 253, 434 );

data と言う変数へは関数によって返された戻り値(関数値とか返却値とかとも言ったりします)が格納されます。つまり 253 と 434 を足した数です。

引数も戻り値も結局はデータです。処理させたいデータが引数で、処理した結果であるデータが戻り値です。

return は呼び出し元へ結果を返すためのものです。


C言語の関数にはいろいろな種類があります。

引数も戻り値もあるもの。

int add( int hoge, int piyo ){
return hoge + piyo;
}

引数はあるが戻り値のないもの。

void add( int hoge, int piyo ){
printf( "%d", hoge + piyo );
}

戻り値はあるが引数のないもの。

#include <stdlib.h>
#include <time.h>

int getRandNum(void){
srand( time( NULL ) );
return rand() % 500;
}

戻り値も引数もないもの。

void print(void){
printf( "%d + %d = %d", 253, 434, 253 + 434 );
}

これらの使い分けはデータの内容や型、処理の内容により適宜必要なものを使ってください。

まず、関数とは何らかの処理をして結果を返してくれるものです。わざとらしい例ですが二つの数を足してその結果を返す関数を見てみましょう。

#include <stdio.h>

int add( int hoge, int piyo ){
return hoge + piyo;
}

int main(void){
int data;

data = add( 253, 434 );
printf( "%d", data );

return 0;
}

見てわかると思いますが、引数とは関数内の処理に使うデータです。
このデータは関数を呼び出すときに与えます。

add( 253, 434 )

すると与...続きを読む

QVC++でwin32APIを作っているのですが・・・

こんにちは。私はwin32APIを勉強しているc言語初心者です。
私はMicrosoft Visual C++ 2008を使ってc言語のwin32APIをプログラミングしているのですが、独学でやっているので物凄く邪道なwin32APIプログラミングをしているような気がするのです。

・c言語のプログラムを書いて、C++のwin32APIプロジェクトとしてビルドする。
・ヘッダーファイルにwin32API関数がなかったので、自分のwindowOSからwin32API関数を探し出してVC++2008のなかのincludeフォルダ内にコピー&ペーストして使えるようにした。

これって邪道ですか?一応何の問題もなくwin32APIプログラムが作れるのですが、もっと正規なやり方があるでしょうか。回答よろしくお願いします。

Aベストアンサー

文章のあちこちが意味不明です。
>VC++でwin32APIを作っているのですが・・・
VC++でwin32APIを使って作っているのですが・・・

>・c言語のプログラムを書いて、C++のwin32APIプロジェクトとしてビルドする。
まぁ気になるなら拡張子を.cに変えてください。これでただのC言語として扱われます。

>・ヘッダーファイルにwin32API関数がなかったので、自分のwindowOSからwin32API関数を探し出してVC++2008のなかのincludeフォルダ内にコピー&ペーストして使えるようにした。
#includeを追加しているって意味なら問題なし。Win32APIのヘッダを自分のプロジェクト内にコピーしていたら邪道。自分のソースのヘッダファイルにWin32APIのヘッダの内容をコピーして使っているなら超邪道。将来バージョンアップで必ず問題を引き起こします。
『PlatformSDK』をちゃんとインストールしているなら#includeするだけです。

Qtimeの引数と戻り値

http://www.microsoft.com/JAPAN/developer/library/vccore/_crt_time.htm
上記サイトで、少しスクロールを下げると、解説のことろで、
引数は NULL でもかまいませんと書かれています。
引数を NULL にして使うのはどういった場合の時ですか?

Aベストアンサー

「NULLでもかまわない」というよりは「NULLでない場合は引数であらわされる領域【にも】値が設定される」という解釈の方が使いやすいでしょう。

1. 純粋に時間を取得したいだけのとき
time_t t ;
t = time(NULL) ;

2. 時間を取得しながら何か処理を行いたいとき
time_t t1, t2 ;
t1 = time(NULL) ;
while((time(&t2) - t1) < 10) {
//時間待ち
}
//t2を使う何らかの処理

通常、time()を使う時って1のパターンです。
「2のような使い方もできる」という程度の認識でいいのではないでしょうか。


人気Q&Aランキング

おすすめ情報