亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? utils.wvsgml

?? wvstreams軟件包包含了libwvutils, libwvstreams 和 libwvcrypto 的類庫. 這些是用來編譯wvdial的.
?? WVSGML
字號:
WVPART(utils, The Utilities Library, WVPREFACE(Introduction,    The "utils" library contains fundamental support utilities used throughout  WvStreams, or at least ones that we couldn't classify anywhere else.   Functions and classes in the utils library don't depend on functions and  classes from any other WvStreams libraries.   ) WVCHAPTER(basicutils, Basic String Handling,    Here are some particularly simple C functions for manipulating character  strings.  In general, the only reason they sit in C++ files is to make it  easier to link with our C++ functions -- they don't use many C++ features.   WVSECT1(strutils, String Utilities (strutils.cc),   WVSECT2(terminatestring, terminate_string(),        WVCMD(char *terminate_string(char *string, char c))    Add character c to the end of a string after removing terminating    carriage returns/linefeeds if any.    You need a buffer that's at least one character bigger than the    current length of the string, including the terminating NUL.   )      WVSECT2(trimstring, trim_string(),    WVCMD(char *trim_string(char *string))        Trims whitespace from the beginning and end of the character string,    including carriage return / linefeed characters.  Modifies the string    in place.  Returns the new first character of the string, which points    either at 'string' itself or some character contained therein.        string is allowed to be NULL; returns NULL in that case.   )       WVSECT2(replacechar, replace_char(),    WVCMD(void replace_char(void *string, char c1, char c2, int length))        Replace all instances of c1 with c2 for the first 'length' characters in    'string'.  Ignores terminating NUL, so make sure you set 'length'    correctly.   )       WVSECT2(strlwr, strlwr(),    WVCMD(char *strlwr(char *string))        In-place modify a character string so that all contained letters are    in lower case.  Returns 'string'.   )       WVSECT2(isword, is_word(),    WVCMD(bool is_word(char *string))        Returns true if all characters in 'string' are isalnum() (alphanumeric).   )       WVSECT2(hexdumpbuffer, hexdump_buffer(),    WVCMD(WvString hexdump_buffer(unsigned char *buf, size_t len))        Produce a hexadecimal dump of the data buffer in 'buf' of length 'len'.    it is formatted with 16 bytes per line; each line has an address offset,    hex representation, and printable representation.        This is used mostly for debugging purposes.  You can send the returned    <link linkend="wvstring">WvString</link> object directly to a     <link linkend="wvlog">WvLog</link> or any other <link linkend="wvstream">    WvStream</link> for output.   )       WVSECT2(isnewline, isnewline(),    WVCMD(bool isnewline(char c))        Returns true if 'c' is a newline or carriage return character.  Increases    code readability a bit.   )       WVSECT2(hexify, hexify(),    WVCMD(void hexify(char *obuf, unsigned char *ibuf, size_t len))        Write the contents of the binary string of length 'len' pointed to by    'ibuf' into the output buffer 'obuf' in hexadecimal format.        For example, if len==4, ibuf=="ABCDEF", then obuf will contain "41424344"    with a terminating NUL character.        This is useful to turn arbitrary binary into a simple printable format,    so that it can (for example) be written to a <link    linkend="wvconf">WvConf</link> configuration file.        obuf must be a buffer with at least (len * 2) + 1 bytes available.    (two digits for each byte of ibuf, plus a terminating NUL).       )       WVSECT2(unhexify, unhexify(),    WVCMD(void unhexify(unsigned char *obuf, char *ibuf))        Reverse the operation performed by <link    linkend="hexify">hexify()</link>.  obuf must be a buffer large enough to    contain the entire binary output string; you can calculate this size with    (strlen(ibuf) / 2).  obuf will NOT be automatically NUL-terminated.       )  )    WVSECT1(verstring, Version String Manipulation (verstring.cc),     These are version number and string manipulations, mostly specific to   Worldvisions software.   Version numbers are 32-bit hexadecimal numbers such as 0x00012a00.  The   first 16 bits are the major version, and the second 16 bits are the   (fractional) minor version. For example, the above example corresponds to   version "1.2a" (which is the version string).      You can numerically compare version numbers using the standard C &lt; and   &gt; operators, which is what makes them useful.      Verstring cannot deal with version numbers that contain more than four   digits to the left or right of the decimal, letters greater than f, or   more than one decimal.   WVSECT2(vertostring, ver_to_string(),    WVCMD(const char *ver_to_string(unsigned int ver))        Converts an integer, like 0x00012a00, to a string, like 1.2a.   )      WVSECT2(stringtover, string_to_ver(),    WVCMD(unsigned int string_to_ver(const char *str))        Converts a string, like 1.2a, to an integer, like 0x00012a00.   )     )  WVSECT1(base64, Base64 Encoding Tools (base64.cc),   Functions for encoding and ecoding strings in MIME Base64 notation.      WVSECT2(base64encode, base64_encode(),    WVCMD(char *base64_encode(char *str))        Convert 'str' to base64 encoding, and return a dynamically-allocated    char* string with the result.        You must 'delete' the returned string when you've finished with it.   )      WVSECT2(base64decode, base64_decode(),    WVCMD(char *base64_decode(char *str))        Convert 'str' from base64 format into a normal string, and return a    dynamically-allocated char* string with the result.        You must 'delete' the returned string when you've finished with it.   )  ) )  WVCHAPTER(wvstring, WvString - dynamic character strings,   WVSECT1(wvstringintro, Introduction,   WvString is an implementation of a simple and efficient printable-string   class.  It leaves out many of the notational conveniences provided by   other string classes, because they waste too much CPU time and space.   It does the one thing really missing from char* strings, that is, dynamic   buffer management.      When you copy one WvString to another, it does _not_ duplicate the   buffer; it just creates another pointer to it.  To really duplicate the   buffer, call the unique() member function.   To change the contents of a WvString, you need to run its edit() member   function, which executes unique() and then returns a char* pointer to the   WvString contents.   The most annoying side-effect of this implementation is that if you   construct a WvString from a char* buffer or static string, WvString won't   duplicate it.  Usually this is okay and much faster (for example, if you   just want to print a static string).  However, if you construct a   WvString from a dynamic variable, changing the dynamic variable will   change the WvString unless you run unique() or edit().  Worse still,   deleting the dynamic variable will make WvString act unpredictably.   But it does cut out extra dynamic memory allocation for the most common   cases, and it almost always avoids manual 'new' and 'delete' of string   objects.     )  WVSECT1(wvstringexamples, WvString Examples,        WVCMD(WvString x("fuzzy wazoo");x.unique();)     The first line creates a WvString object 'x' containing a pointer to     the static string "fuzzy wazoo".  This requires no dynamic memory     allocation.     The second line makes the WvString "unique", which separates it from     the static string.  This requires a dynamic memory allocation.  In this     particular case, calling unique() was a pretty silly thing to do.          When 'x' is destroyed (automatically upon exiting the C++ code block)     the dynamic string will be deleted automatically.          WVCMD(WvString output("fuzzy %-10.3s %5s\n", "abcdef", 12);WvString c(output);c.edit()[1] = 'a';)          The first command above creates a WvString called 'output' which contains     the string "fuzzy abc[seven spaces] [three spaces]12\n".  This uses the     printf-like string formatting feature built into WvString.  Note that     unlike printf, WvString's formatter is type-safe: you can't pass the     wrong kind of object to the formatter.  In fact, everything you format     must use a '%s' format string - %d, %f, etc are not supported.          The above function call works as follows:  C++ automatically promotes the     first two parameters ("fuzzy..." and "abcdef") into static WvStrings     using the simple WvString constructor.  Then it turns '12' into a     WvString using the WvString::WvString(int) constructor.  This one     requires a dynamic memory allocation since it generates a new string.          C++ then passes the new WvStrings on to the WvString "complex"     constructor, which formats them according to the first string and     generates an output string, which is always dynamically allocated.          The second line above creates a WvString 'c' which is the same as     'output'.  It does not cause any new dynamic memory allocations to occur,     and is very quick.          The third line first makes 'c' unique (so that it has a separate copy     of the output string), then changes the second character to 'a', so that     now 'c' contains "fazzy abc 12" and output contains "fuzzy abc 12".        WVCMD(WvString nul;)          This command creates a null WvString.  This is NOT simply a WvString     containing a zero-length string, but a WvString that points to nothing.     You very seldom want to leave a WvString this way, but if you do, you     can test for this condition with something like:	  	  WVCMD(((char *)nul == NULL))          Most often, you will want to immediately fill the null WvString with     an empty buffer with setsize(), as below.          WVCMD(WvString newstr;newstr.setsize(128);sprintf(newstr.edit(), "blah blah %5.4f", floatval);)          These commands first create a NULL WvString, then attach it to an     uninitialized 128-byte buffer.  We then use sprintf to fill the string     buffer.      ) )  WVCHAPTER(wvlinklist, WvLinkList - type-safe linked lists and iterators,    WvLinkList allows you to create type-safe lists of objects, along with   appropriate iterators.  Lists are used all over the Weaver and WvStreams,   and the best way to learn about them is by example -- so read the source   code and look at the sample program in testlist.cc.   You might also want to read the top of wvlinklist.h for some implementation   details.      A typical use of WvLinkList would be something like this:      WVEXAMPLE(wvlistex.cc) )  WVCHAPTER(wvhashtable, WvHashTable - type-safe hash tables and iterators,    WvHashTable works a lot like <link linkend="wvlinklist">WvLinkList</link>,   except it allows for fast indexing of objects in the table (or   "dictionary") using the [] operator.   We implement a hash table as a fixed-size array of WvLinkLists.  Someday,   we might change the implementation to use a self-resizing array instead.      Iterators work with WvHashTable in exactly the same way as with   WvLinkList.   WvHashTable usage is described more fully, along with examples, in   wvhashtable.h. )  WVCHAPTER(wvbuffer, WvBuffer - dynamically-resizing binary buffers,      Not written yet.    )  WVCHAPTER(wvlockfile, WvLockFile - tty lock file creation,    Not written yet.  ))

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美v国产在线一区二区三区| 亚洲综合激情网| av成人动漫在线观看| 亚洲人成影院在线观看| 色天天综合色天天久久| 亚洲福利一区二区三区| 日韩一二在线观看| 夫妻av一区二区| 亚洲男人的天堂在线aⅴ视频| 欧美日韩免费电影| 精油按摩中文字幕久久| 国产女主播视频一区二区| 99久久夜色精品国产网站| 亚洲图片欧美综合| 精品精品国产高清一毛片一天堂| 国产夫妻精品视频| 夜夜嗨av一区二区三区四季av| 欧美一区二区三区日韩视频| 国产精品一区二区三区乱码| 亚洲精选在线视频| 日韩一级免费观看| 成人激情午夜影院| 性做久久久久久| 久久久久久99精品| 欧美亚洲日本国产| 国产乱人伦偷精品视频免下载| 亚洲色图制服诱惑| 日韩一区二区三区免费看 | 精品视频在线免费看| 久久www免费人成看片高清| 国产精品白丝在线| 欧美丰满少妇xxxxx高潮对白 | 激情都市一区二区| 亚洲欧洲成人精品av97| 91精品国产乱| av高清不卡在线| 日韩av在线发布| 亚洲国产精品精华液2区45| 欧美色网站导航| 国产福利一区在线| 日欧美一区二区| 中文字幕一区av| 欧美电影免费提供在线观看| 91视频xxxx| 国产专区综合网| 亚洲高清不卡在线| 国产精品国产三级国产普通话三级 | 91精品免费在线| bt欧美亚洲午夜电影天堂| 免费观看成人鲁鲁鲁鲁鲁视频| 自拍偷拍国产精品| 日韩免费高清视频| 欧美性高清videossexo| 成人美女视频在线看| 美女爽到高潮91| 亚洲精选免费视频| 欧美激情一二三区| 欧美大度的电影原声| 欧美日韩综合不卡| 成人av电影在线播放| 精品一区二区三区香蕉蜜桃| 亚洲一区二区美女| 中文字幕亚洲一区二区av在线 | 亚洲欧美日韩国产综合在线| 久久久久国色av免费看影院| 91精品国产综合久久蜜臀| 91论坛在线播放| 国产99一区视频免费| 久久国产精品色| 亚洲成人免费电影| 亚洲色图.com| 国产欧美日韩麻豆91| 日韩午夜在线观看视频| 欧美欧美午夜aⅴ在线观看| 色天天综合色天天久久| 成人18视频日本| 国产一区二区不卡在线| 蜜桃久久久久久久| 午夜精品久久久久久久蜜桃app| 中文字幕字幕中文在线中不卡视频| 国产亚洲制服色| 精品国产污污免费网站入口| 91精品欧美一区二区三区综合在 | 国产呦萝稀缺另类资源| 免费在线观看不卡| 日韩高清在线观看| 亚洲精品自拍动漫在线| 久久久久久久久免费| 日韩欧美一级在线播放| 欧美日韩久久一区| 欧美亚洲日本国产| 欧美在线制服丝袜| 色呦呦国产精品| 色哦色哦哦色天天综合| 色偷偷久久一区二区三区| 91香蕉国产在线观看软件| 成人精品国产一区二区4080| 国产+成+人+亚洲欧洲自线| 国产精品一区二区在线看| 国产一区二区女| 国产精品66部| 丁香六月久久综合狠狠色| 国产成都精品91一区二区三 | 激情综合色丁香一区二区| 免费久久99精品国产| 日本亚洲视频在线| 美女网站色91| 黄色日韩网站视频| 国产精选一区二区三区| 国产成人精品影院| 成人深夜视频在线观看| www.欧美色图| 色婷婷久久久综合中文字幕| 色噜噜夜夜夜综合网| 欧美自拍偷拍午夜视频| 欧美色综合影院| 91麻豆精品国产91| 精品88久久久久88久久久| 久久久久久久精| 国产精品久久久久影院亚瑟| 亚洲欧美色一区| 亚洲制服丝袜一区| 视频一区二区不卡| 精品一区二区三区av| 国产在线精品免费av| 粉嫩一区二区三区性色av| 成人精品视频.| 色婷婷综合久久久中文一区二区 | 国产亚洲综合在线| 亚洲图片欧美激情| 亚洲成人777| 毛片一区二区三区| 国产不卡视频一区| 91视频一区二区| 欧美精品视频www在线观看| 日韩午夜在线影院| 日本一区二区高清| 亚洲一区欧美一区| 美腿丝袜亚洲综合| 国产 日韩 欧美大片| 91久久久免费一区二区| 91精品国产高清一区二区三区| 久久综合狠狠综合| 中文字幕一区二区三区视频| 亚洲成人免费观看| 国产精品自拍网站| 色婷婷精品大在线视频| 91精品黄色片免费大全| 欧美高清一级片在线观看| 亚洲最大成人综合| 久久99久久久欧美国产| 成人精品免费看| 欧美高清性hdvideosex| 久久精品夜色噜噜亚洲aⅴ| 亚洲欧美日韩国产综合在线| 蜜臀国产一区二区三区在线播放| 成人亚洲一区二区一| 欧美吞精做爰啪啪高潮| 久久综合久久鬼色| 一区二区高清免费观看影视大全| 蜜桃一区二区三区四区| 91亚洲国产成人精品一区二区三| 91精品国产综合久久久久久| 国产女人18水真多18精品一级做| 亚洲第一综合色| 欧美国产一区视频在线观看| 日韩一区二区三区电影| 日本一区二区久久| 午夜精品一区二区三区电影天堂| 国产毛片精品国产一区二区三区| 在线观看欧美黄色| 国产性做久久久久久| 亚洲电影在线免费观看| 国产精品99久久久久久久vr | 久久婷婷综合激情| 亚洲国产一区在线观看| 国产成人免费xxxxxxxx| 欧美精选在线播放| 亚洲欧洲成人av每日更新| 久久国产福利国产秒拍| 91精彩视频在线| 久久久九九九九| 日韩精品五月天| 91性感美女视频| 久久久久久久久97黄色工厂| 天堂精品中文字幕在线| 9i看片成人免费高清| 精品国产乱码久久久久久免费| 一区二区三区日韩在线观看| 国产福利精品导航| 日韩免费高清av| 亚洲国产你懂的| 暴力调教一区二区三区| 精品久久久三级丝袜| 亚洲国产日韩av| 94-欧美-setu| 中文字幕欧美日本乱码一线二线| 蜜桃免费网站一区二区三区 | 欧美亚洲动漫制服丝袜| 国产精品久久久99|