更多信息
缓冲区操纵
字符分类
目录控制
文件处理
创建文本输出例程
stream Routines
低级别的 I / O
console and port I/O routines
内存分配
process and environment control
routines
字符串操作
MS-DOS 接口
时间
虚拟内存分配
32 位 C 运行时间
概要
Win 32 应用程序编程接口 (API) 中的许多 C 运行时功能具有直接等效项。 这篇文章列出 C 运行时函数按类别与他们的 Win 32 命令对照表或单词"none"如果没有等效的存在。
回到顶端
更多信息
注意: 后跟一个星号 (!) 的这些函数是 16-bit C 运行时仅的一部分。 是唯一 32 位 C 运行时函数中最后一节列出单独。 所有其他函数对这两个 C 运行时间都是一样的。
回到顶端
缓冲区操纵
_memccpy none
memchr none
memcmp none
memcpy CopyMemory
_memicmp none
memmove
MoveMemory
memset FillMemory, ZeroMemory
_swab none
回到顶端
字符分类
isalnum
IsCharAlphaNumeric
isalpha
IsCharAlpha, GetStringTypeW (Unicode)
__isascii none
iscntrl none,
GetStringTypeW (Unicode)
__iscsym none
__iscsymf none
isdigit none,
GetStringTypeW (Unicode)
isgraph none
islower
IsCharLower, GetStringTypeW (Unicode)
isprint none
ispunct none,
GetStringTypeW (Unicode)
isspace none,
GetStringTypeW (Unicode)
isupper
IsCharUpper, GetStringTypeW (Unicode)
isxdigit none,
GetStringTypeW (Unicode)
__toascii none
tolower CharLower
_tolower none
toupper CharUpper
_toupper none
回到顶端
目录控制
_chdir SetCurrentDirectory
_chdrive
SetCurrentDirectory
_getcwd GetCurrentDirectory
_getdrive
GetCurrentDirectory
_mkdir CreateDirectory
_rmdir RemoveDirectory
_searchenv
SearchPath
回到顶端
文件处理
_access none
_chmod SetFileAttributes
_chsize SetEndOfFile
_filelength
GetFileSize
_fstat See Note 5
_fullpath
GetFullPathName
_get_osfhandle none
_isatty GetFileType
_locking
LockFileEx
_makepath none
_mktemp GetTempFileName
_open_osfhandle none
remove DeleteFile
rename MoveFile
_setmode none
_splitpath none
_stat none
_umask none
_unlink DeleteFile
回到顶端
创建文本输出例程
_displaycursor*
SetConsoleCursorInfo
_gettextcolor* GetConsoleScreenBufferInfo
_gettextcursor*
GetConsoleCursorInfo
_gettextposition*
GetConsoleScreenBufferInfo
_gettextwindow*
GetConsoleWindowInfo
_outtext*
WriteConsole
_scrolltextwindow* ScrollConsoleScreenBuffer
_settextcolor*
SetConsoleTextAttribute
_settextcursor*
SetConsoleCursorInfo
_settextposition*
SetConsoleCursorPosition
_settextwindow*
SetConsoleWindowInfo
_wrapon* SetConsoleMode
回到顶端
stream Routines
clearerr none
fclose CloseHandle
_fcloseall none
_fdopen none
feof none
ferror none
fflush FlushFileBuffers
fgetc none
_fgetchar none
fgetpos none
fgets none
_fileno none
_flushall none
fopen CreateFile
fprintf none
fputc none
_fputchar none
fputs none
fread ReadFile
freopen
(std handles) SetStdHandle
fscanf none
fseek SetFilePointer
fsetpos SetFilePointer
_fsopen CreateFile
ftell SetFilePointer (check
return value)
fwrite WriteFile
getc none
getchar none
gets none
_getw none
printf none
putc none
putchar none
puts none
_putw none
rewind SetFilePointer
_rmtmp none
scanf none
setbuf none
setvbuf none
_snprintf none
sprintf wsprintf
sscanf none
_tempnam
GetTempFileName
tmpfile none
tmpnam GetTempFileName
ungetc none
vfprintf none
vprintf none
_vsnprintf none
vsprintf wvsprintf
回到顶端
低级别的 I / O
_close _lclose, CloseHandle
_commit FlushFileBuffers
_creat _lcreat, CreateFile
_dup DuplicateHandle
_dup2 none
_eof none
_lseek _llseek, SetFilePointer
_open _lopen, CreateFile
_read _lread, ReadFile
_sopen CreateFile
_tell SetFilePointer (check return
value)
_write _lread
回到顶端
console and port I/O routines
_cgets none
_cprintf none
_cputs none
_cscanf none
_getch ReadConsoleInput
_getche ReadConsoleInput
_inp none
_inpw none
_kbhit PeekConsoleInput
_outp none
_outpw none
_putch WriteConsoleInput
_ungetch none
回到顶端
内存分配
_alloca none
_bfreeseg* none
_bheapseg* none
calloc GlobalAlloc
_expand none
free GlobalFree
_freect* GlobalMemoryStatus
_halloc*
GlobalAlloc
_heapadd none
_heapchk none
_heapmin none
_heapset none
_heapwalk none
_hfree* GlobalFree
malloc GlobalAlloc
_memavl GlobalMemoryStatus
_memmax GlobalMemoryStatus
_msize* GlobalSize
realloc
GlobalReAlloc
_set_new_handler none
_set_hnew_handler* none
_stackavail* none
回到顶端
process and environment control routines
abort none
assert none
atexit none
_cexit none
_c_exit none
_exec
functions none
exit ExitProcess
_exit ExitProcess
getenv GetEnvironmentVariable
_getpid GetCurrentProcessId
longjmp none
_onexit none
perror FormatMessage
_putenv SetEnvironmentVariable
raise RaiseException
setjmp none
signal
(ctrl-c only) SetConsoleCtrlHandler
_spawn
functions CreateProcess
system CreateProcess
回到顶端
字符串操作
strcat,
wcscat lstrcat
strchr,
wcschr none
strcmp,
wcscmp lstrcmp
strcpy,
wcscpy lstrcpy
strcspn,
wcscspn none
_strdup,
_wcsdup none
strerror
FormatMessage
_strerror FormatMessage
_stricmp,
_wcsicmp lstrcmpi
strlen,
wcslen lstrlen
_strlwr,
_wcslwr CharLower,
CharLowerBuffer
strncat,
wcsncat none
strncmp,
wcsncmp none
strncpy,
wcsncpy none
_strnicmp,
_wcsnicmp none
_strnset,
_wcsnset FillMemory, ZeroMemory
strpbrk,
wcspbrk none
strrchr,
wcsrchr none
_strrev,
_wcsrev none
_strset,
_wcsset FillMemory, ZeroMemory
strspn, wcsspn none
strstr,
wcsstr none
strtok,
wcstok none
_strupr,
_wcsupr CharUpper,
CharUpperBuffer
回到顶端
MS-DOS 接口
_bdos* none
_chain_intr* none
_disable* none
_dos_allocmem*
GlobalAlloc
_dos_close* CloseHandle
_dos_commit*
FlushFileBuffers
_dos_creat*
CreateFile
_dos_creatnew*
CreateFile
_dos_findfirst*
FindFirstFile
_dos_findnext*
FindNextFile
_dos_freemem* GlobalFree
_dos_getdate*
GetSystemTime
_dos_getdiskfree*
GetDiskFreeSpace
_dos_getdrive*
GetCurrentDirectory
_dos_getfileattr*
GetFileAttributes
_dos_getftime*
GetFileTime
_dos_gettime* GetSystemTime
_dos_getvect* none
_dos_keep* none
_dos_open*
OpenFile
_dos_read*
ReadFile
_dos_setblock*
GlobalReAlloc
_dos_setdate*
SetSystemTime
_dos_setdrive*
SetCurrentDirectory
_dos_setfileattr*
SetFileAttributes
_dos_setftime*
SetFileTime
_dos_settime*
SetSystemTime
_dos_setvect* none
_dos_write*
WriteFile
_dosexterr* GetLastError
_enable* none
_FP_OFF* none
_FP_SEG* none
_harderr* See
Note 1
_hardresume* See
Note 1
_hardretn* See Note
1
_int86* none
_int86x* none
_intdos* none
_intdosx* none
_segread* none
回到顶端
时间
asctime See Note 2
clock See Note 2
ctime See Note 2
difftime See Note 2
_ftime See Note 2
_getsystime
GetLocalTime
gmtime See Note 2
localtime See Note
2
mktime See Note 2
_strdate See Note
2
_strtime See Note
2
time See Note 2
_tzset See Note 2
_utime SetFileTime
回到顶端
虚拟内存分配
_vfree* See Note 3
_vheapinit* See Note
3
_vheapterm* See Note
3
_vload* See Note 3
_vlock* See Note 3
_vlockcnt* See Note
3
_vmalloc* See Note
3
_vmsize* See Note
3
_vrealloc* See Note
3
_vunlock* See Note
3
回到顶端
32 位 C 运行时间
_beginthread
CreateThread
_cwait WaitForSingleObject w/
GetExitCodeProcess
_endthread
ExitThread
_findclose
FindClose
_findfirst
FindFirstFile
_findnext FindNextFile
_futime SetFileTime
_get_osfhandle none
_open_osfhandle none
_pclose See Note 4
_pipe CreatePipe
_popen See Note 4
注意 1: 在 Win 32 API 中不存在的 _harderr 函数。 但是,大部分它们的功能,可通过结构化的异常处理。
NOTE 2: The time functions are based on that is not used in Win32 format。 there
are that are documented in Help file specific Win32 time functions。
注意 3: 本文档中列出的虚拟内存函数是特定于 MS-DOS 环境的被写入访问超出 640K 在 MS-DOS 中可用 RAM 的内存。 因为 Win 32 中不存在此限制,应该能使用标准的内存分配函数。
NOTE 4: While _pclose() and _popen() do not have
direct Win32 equivalents,can (with some work) simulate with following calls:
_popen CreatePipe
CreateProcess
_pclose WaitForSingleObject
CloseHandle
NOTE 5: GetFileInformationByHandle() is for _fstat() C
Run-time function Win32 equivalent. however,GetFileInformationByHandle() is not
supported by Win32s version 1.1。 is supported in Win32s 1.2。 GetFileSize(),GetFileAttributes(),GetFileTime(),and
GetFileTitle() are supported by Win32s 1.1 and 1.2。