curl c api
curl c api
¹ØÓÚCurlµÄ½éÉܺܶ࣬ÕâÀï²»Ïêϸ½éÉÜ£¬Ö÷Ҫ̸һϼòµ¥Ó¦Óá£
×î½üÑо¿ÁËÒ»ÏÂLinuxϵÄcurl C API,curl c APIµÄÎĵµ±È½Ï·á¸»£¬Î¨Ò»¾ÍÊDzéÕÒÆðÀ´£¬·ÑЩʱ¼ä¡£CurlµÄC APIºÍcurlµÄPHP API£¬º¯Êý½Ó¿ÚºÍ×÷ÓôóÖÂÏàͬ£¬ËùÒÔÈç¹ûÓÐPHP APIʹÓþÑéÓ¦¸ÃºÜºÃÀí½â¡£
1£ºCURLcode curl_global_init(long flags);º¯Êý£¬Õâ¸öº¯ÊýÈ«¾ÖÐèÒªµ÷ÓÃÒ»´Î£¨¶à´Îµ÷ÓÃÒ²¿ÉÒÔ£¬²»¹ýûÓбØÒª£©£¬ ËùÒÔÕâÒ²ÊǰÑCurlplusÉè¼Æ³Éµ¥ÌåÀàµÄÔÒò£¬curl_global_initº¯ÊýÔÚÆäËûlibcurlº¯Êýµ÷ÓÃǰÖÁÉÙµ÷ÓÃÒ»´Î£¬³ÌÐò×îºóÐèÒªµ÷ÓÃcurl_global_cleanup,½øÐÐÇåÀí¡£
²ÎÊý£ºflags
CURL_GLOBAL_ALL Initialize everything possible. This sets all known bits.
CURL_GLOBAL_SSL Initialize SSL
CURL_GLOBAL_WIN32 Initialize the Win32 socket libraries.
CURL_GLOBAL_NOTHING Initialise nothing extra. This sets no bit.
CURLcode ÊÇÒ»¸öenum£¬µ±CURLcodeΪCURLE_OKʱ£¬±íʾº¯ÊýÖ´Ðгɹ¦£¬·ñÔòʧ°Ü£¬¾ßÌå´íÎóÔÒò¿ÉÒԲ鿴<curl/curl.h>ÎļþÄڵ͍Òå¡£
2£ºcurl_easy_init - Start a libcurl easy session
curl_easy_initÓÃÀ´³õʼ»¯Ò»¸öCURLµÄÖ¸Õë(ÓÐЩÏñ·µ»ØFILEÀàÐ͵ÄÖ¸ÕëÒ»Ñù). ÏàÓ¦µÄÔÚµ÷ÓýáÊøÊ±ÒªÓÃcurl_easy_cleanupº¯ÊýÇåÀí. Ò»°ãcurl_easy_initÒâζ×ÅÒ»¸ö»á»°µÄ¿ªÊ¼. ËüµÄ·µ»ØÖµÊÇCURL *£¬curl_easy_initº¯ÊýÊÇÏß³ÌÏà¹ØµÄ£¬Ò²¾ÍÊÇ˵²»ÄÜÔÚÒ»¸öÏß³ÌÖе÷ÓÃÁíÍâÒ»¸öÏß³Ìͨ¹ýcurl_easy_init´´½¨µÄCURLÖ¸Õë¡£
3£ºCURLcode curl_easy_setopt(CURL *handle, CURLoption option, parameter);
ÃèÊö: Õâ¸öº¯Êý×îÖØÒªÁË.¼¸ºõËùÓеÄcurl ³ÌÐò¶¼ÒªÆµ·±µÄʹÓÃËü.Ëü¸æËßcurl¿â.³ÌÐò½«ÓÐÈçºÎµÄÐÐΪ. ±ÈÈçÒª²é¿´Ò»¸öÍøÒ³µÄhtml´úÂëµÈ.£¬ÒªÏë¾ßÌåÁ˽âCURLµÄÐÐΪ£¬±ØÐë¶ÔCURLoptionÓÐ×ã¹»µÄÁ˽⣬¾ßÌå¿ÉÒԲο¼
http://curl.haxx.se/libcurl/c/curl_easy_setopt.html
ÕâÀïÓÐÁ½¸öÀàÐͲ»Ò×Àí½âCURLOPT_WRITEFUNCTION£¬CURLOPT_WRITEDATA
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, Curlplus::writer);
ÉèÖÃÒ»¸ö»Øµ÷º¯Êý£¬Õâ¸ö»Øµ÷º¯ÊýµÄ¸ñʽÊÇ
size_t function( void *ptr, size_t size, size_t nmemb, void *stream);
ptr,·µ»ØÊý¾ÝµÄÖ¸Õë
size,·µ»ØÊý¾Ýÿ¿éµÄ´óС
nmemb,·µ»ØÊý¾ÝµÄ¿éÊý£¨ÕâÀï·µ»ØÊý¾Ý´®µÄÕæÕý´óСΪsize*nmemb£©
stream£¬ÊÇcurl_easy_setopt(curl, CURLOPT_WRITEDATA, &buffer); ÖеÄbufferµÄÖ¸Õë¡£
ÔÚÉÏÃæµÄÀý×ÓÖУ¬b
Ïà¹ØÎĵµ£º
ÏÂÃæÕâ¸ö³ÌÐòÊä³öʲô£¿
enum {false,true};
int main()
{
int i=1;
do
{
printf("%d\n",i);
i++;
if(i < 15)
continue;
}while(false);
return 0;
}
ÄãÏàÐÅô£¿ÏÂà ......
Ô¤´¦ÀíÆ÷£¨Preprocessor£©
1. ÓÃÔ¤´¦ÀíÖ¸Áî#define ÉùÃ÷Ò»¸ö³£Êý£¬ÓÃÒÔ±íÃ÷1ÄêÖÐÓжàÉÙÃ루ºöÂÔÈòÄêÎÊÌ⣩
#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL
ÎÒÔÚÕâÏë¿´µ½¼¸¼þÊÂÇ飺
1). #define Óï·¨µÄ»ù±¾ÖªÊ¶£¨ÀýÈ磺²»ÄÜÒԷֺŽáÊø£¬À¨ºÅµÄʹÓ㬵ȵȣ©
2). ¶®µÃÔ¤´¦ÀíÆ÷½«ÎªÄã¼ÆËã³£Êý±í´ïʽµÄÖµ£¬Òò´Ë£¬Ö±½Ó ......
#include <stdio.h>
long long mod(long long a,long long b)
{
return (a % b + b) % b;
}
struct triple
{
long long d,x,y;
};
long long Euclid(long long a,long long b)
{
if(b == 0)
return a;
else
retu ......
//linuxϱàÒëg++ $(mysql_config --cflags) ***.cpp $(mysql_config --libs)
/*mysqlÊý¾Ý¿âÖбíµÄÄÚÈÝ
mysql> select * from maindb;
+------------------+---------+-------------+---------+----------+---------------------+---------------------+---------------------+------------------- ......