⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changes.txt

📁 短小精悍的C语言标准函数库。提供450个以上的可移植的算法和工具代码。
💻 TXT
📖 第 1 页 / 共 2 页
字号:
Changes To Standard Function Library
'*' marks changes that potentially affect existing client code.

12 Apr 1999
    SFLDIR
      * resolve_path() now returns a dynamically-allocated string.
      * locate_path() now returns a dynamically-allocated string.
      
02 Nov 1998
    SFLTREE
      - bug in tree handling was fixed.  :)

15 Jun 1998
    SFLSTR
      - xstrcpy now permits memory leak debugging through xstrcpy_debug()
        macro

01 Jun 1998
    SFLFILE
      - new function, file_concat().

31 May 1998
    SFLLANG
      - new function, timestamp_string().

01 May 1998
    SFLSTR
    SFLHTTP
      - various new functions provided by Scott Beasly

06 Apr 1998
    SFLXML
      - new library function that handles XML files
    SFLMAIL
      - new library function to send emails (uses sflcbox for now)
    SFLCBOX
      - temporary home for various functions used by sflmail.

27 Mar 1998
    Various
      - tightened-up use of vsprintf to use vsnprintf where possible

21 Mar 1998
    SFLTOK
      - tok_subst () handles symbol substitution
    SFLINI
      - ini_dyn_load () calls tok_subst() for all value strings

12 Mar 1998
    SFLSOCK
      - connects are now non-blocking unless BLOCKING_CONNECT is defined.

11 Feb 1998
    SFLCONS
      - New function, coputc().

26 Dec 1997
    SFLSOCK
      - New functions to access DNS information: get_host_file(),
        get_name_server().
    SFLEXDR
      - EXDR format extended to handle 'huge' memory blocks (32-bit size)

26 Nov 1997
    SFLTREE
      - New source module handles red-black trees.

09 Nov 1997
    SFLPROC
    SFLFILE
      - OS/2 process support rewritten
    SFLFILE
      - new function: strip_file_name()

22 Oct 1997
    SFLMEM
      - mem_assert now writes to memtrace.lst instead of stderr.

02 Oct 1997
    SFLSTR
      - new function, lexwcmp() does wildcarded lexical comparisons.

29 Sep 1997
    SFLSOCK
      - ip_passive allows passive sockets to be created on specific IP
        address.
    SFLPROC
      - Executable scripts starting with #! can now contain arguments
        after the filename.
    SFLFIND
      - txtfind looped if search string contain accented characters.

10 Sep 1997
    SFLSOCK
      - get_hostaddr, get_hostaddrs return addresses in network order
      - new function, get_hostaddrs() returns all host IP address
      * get_host_name() renamed to get_hostname() for consistency

----------- Released version 1.70

24 Aug 1997
    SFLSOCK
      - socket_is_permitted() now accepts a multi-pattern mask

22 Aug 1997
    PRELUDE.H
      - Bool changed from int to short int, to match sflexdr.

21 Aug 1997
    SFLSOCK
      - passive_TCP() accepts a service "0", if ip_portbase is > 0.

18 Aug 1997
    SFLFILE
      - get_file_size() returns -1 on error conditions.

15 Aug 1997
    SFLINI
      - ini_dyn_save() did not handle files with no headers.

06 Aug 1997
    SFLCVSD
      - Did not reject dates containing only letters

03 Aug 1997
    SFLFILE
      - New function: file_lines ()

02 Aug 1997
    SFLINI
      - When loading ini file, any line starting with '!' is passed to
        trace(); this is meant to help debug complex config setups.

23 Jul 1997
    SFLHTTP
      - New functions: http_encode_meta() and http_decode_meta()

07 Jul 1997
    SFLSTR
      - New function: strprefixed()
    SFLFILE
      - file_has_changed() did not work correctly.
    SFLSYMB
      - New function: sym_empty_table()
    SFLINI
      - New function: ini_dyn_refresh()

06 Jul 1997
    SFLSTR
      - New function: strunique()

29 Jun 1997
    SFLPROC
      - process_create() failed if workdir was specified, and executable
        had a relative filename (e.g. ./myfile).
    SFLSOCK
      - new function, get_hostaddr() returns first host IP address

22 Jun 1997
    SFLSYMB
      * sym_delete_symbol() no longer frees 'data' pointer; this was too
        dangerous.
    SFLMEM
      - error messages sent to sflcons console instead of stderr
      - if mem_display() argument is NULL, sends to console

20 June 1997
    SFLSYST
      - sys_name() reports name of platform.

----------- Released version 1.60

18 Jun 1997
    SFLFILE
      - file_slurp() loads an entire file into memory. (Thanks, Larry)

16 Jun 1997
    SFLSOCK
      - new function, socket_is_permitted() compares IP address with mask

13 Jun 1997
    SFLEXDR
      - exdr_write() failed if "c" or "b" format was used with NULL buffer
    SFLFILE
      - minor improvements to file_where()
    SFLSTR
      - strhash() had a fatal error which caused it to loop indefinitely.

11 Jun 1997
    SFLSTR
      - new function, strdefix() matches prefix in string.
    SFLSOCK
      - new function, socket_nodelay() disables Nagle's algorithm
      - connect_error_value always reset to IP_NOERROR if success

09 Jun 1997
    SFLINI
      - ini_dyn_load() searches PATH for its input files.

04 Jun 1997
    SFLLANG
      - started work on this new multilanguage facility.

02 Jun 1997
    SFLPROC
      - no longer truncates stdout file; must be done by calling process.
    SFLSOCK
      - minor corrections
      - socket_hostaddr() renamed to socket_remoteaddr(); old name still
        supported through a macro
      - socket_localaddr() added as new function
    SFLFILE
      - is_directory() correctly handles "c:" under MS-DOS/OS2/Windows

----------- Released version 1.50, again...

25 May 1997
    SFLDATE
      - date_to_timer() now adjusts for timezone

22 May 1997
    SFLCONS: new module
    SFLDATE
      - corrected handling of year for post-2000 dates
    SFLDIR
      - corrected handling of year for post-2000 dates
    SFLTRON
      - corrected handling of year for post-2000 dates

18 May 1997
    SFLEXDR
      - corrected possible memory corruption in exdr_read(), which sometimes
        allocated block of zero bytes.

16 May 1997
    SFLMEM
      - mem_scavenger() function added
      - tracing now uses sfltron functions
      - mem_alloc() handles allocation of zero bytes better
    * - mem_strfree() returns void

15 May 1997
    SFLMEM
      - added mem_checkall() function and macro; checks all allocated blocks

14 May 1997
    SFLINI
      - recognises name="" as empty value, as documented.

13 May 1997
    SFLMEM
      - Added mem_descr() function: allocates a new DESCR block.
    SFLINI
      - ini_dyn_load() also loads section names into symbol table.
      - ini_dyn_value() slightly improved.

11 May 1997
    SFLFILE
      - file_is_readable(), file_is_writable(), file_is_directory() will
        accept a filename ending in '/' or '\'.

10 May 1997
    SFLPROC
      - process_alarm() improved under Windows; ensures only one timer is
        active at once.  Otherwise timers can pile-up, and finally fail.

09 May 1997
    SFLSOCK
      - New function sock_select() implements select() call
    SFLDATE
      - Under Win32, get_time() resolution improved from 1s to 1/100s

08 May 1997
    SFLDATE
      - added date_is_past(), date_is_present() functions

05 May 1997
    SFLSOCK
      - address_end_point() and connection functions now use ip_portbase.

04 May 1997
    PRELUDE.H
      - environ was wrongly defined as **environ[] (should be *environ[]).
    SFLDIR
      - resolve_path() improved to handle '...' and such.

02 May 1997
    SFLEXDR
      - Recorrected change of 16 Feb. which had somehow gotten lost.
        All stacked arguments are assumed to be at least an 'int' big.

----------- Released version 1.50

27 Apr 1997
    SFLFILE, SFLPROC
      - Space optional after #! header in executable scripts.

25 Apr 1997
    SFLPROC
      - process_timer() now works in 16-bit Windows programs.

22 Apr 1997
    SFLPROC
      - process_create() support for 16-bit programs under 32-bit Windows
      - process_esc(), process_unesc() support directory names with spaces
    SFLFILE
      - New function: file_exec_name()

20 Apr 1997
    SFLCVNS
      - conv_number_string() accepts "" as zero value.
      - flags argument type changed from 'int' to 'word'
    SFLCVSN
      - flags argument type changed from 'int' to 'word'
    SFLCVDS
      - flags argument type changed from 'int' to 'word'
    SFLCVSD
      - flags argument type changed from 'int' to 'word'
    SFLCVTS
      - flags argument type changed from 'int' to 'word'

15 Apr 1997
    SFLDIR
      - file_matches() added

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -