-
Notifications
You must be signed in to change notification settings - Fork 1
よくある質問(まだ一回も質問されてないけど)
C言語(C11)で書かれたtwitter APIのラッパです. 現在開発中です.
cの関数を使ってtwitter APIを叩けます. 特徴として,APIの引数全対応が挙げられます. その弊害として,使わない引数も全て関数に渡す必要があります.
README.mdへどうぞ
twitter APIはUTF-8(BOM無し)を想定していて,このライブラリも渡された文字列はUTF-8として処理します. その際,エンコードがなんなのかは判断していないので,UTF-8以外のマルチバイト文字を関数に渡すと文字化けをします. 関数を呼ぶ側で予めUTF-8に変換しておいて下さい.
twitter APIはjson formatでデータを返しますが,今は一切ライブラリ側でパースをしていません. これを整形すれば目的のデータが得られるので,自分でパースして下さい. jsonのパーサは公式サイトへ行けば下の方にあります. 現在janssonでの動作を確認しています
これをコンパイルするにはlibcurl,liboauthが必要です.
導入手順はここでは紹介しないので,しかるべき手順を踏んでライブラリを入手して下さい.
libcurl
liboauth
bear_init()の中でcurl_global_init(CURL_GLOBAL_DEFAULT)を呼んでいます. 2回目以降のcurl_global_init()の呼び出しは無視されるので,curl_global_init(CURL_GLOBAL_DEFAULT)で初期化されるのがまずい場合は,bear_init()を呼ぶ前にcurl_global_init()を呼びましょう.
正式名称をcompound literalという,Cの機能です. 本来そこが書かれている場所はstruct twitter_id型が予期されますが,compound literalを使うことによって構造体リテラルをその場で定義し,使うことができます.