Files
wibo/dll/crt.h

76 lines
2.9 KiB
C++

#pragma once
#include "types.h"
typedef void (_CC_CDECL *_PVFV)();
typedef int (_CC_CDECL *_PIFV)();
typedef void (_CC_CDECL *_invalid_parameter_handler)(const WCHAR *, const WCHAR *, const WCHAR *, UINT, UINT_PTR);
typedef enum _crt_app_type {
_crt_unknown_app,
_crt_console_app,
_crt_gui_app,
} _crt_app_type;
typedef enum _crt_argv_mode {
_crt_argv_no_arguments,
_crt_argv_unexpanded_arguments,
_crt_argv_expanded_arguments,
} _crt_argv_mode;
typedef void (_CC_CDECL *signal_handler)(int);
typedef int (_CC_CDECL *sort_compare)(const void *, const void *);
using FILE = struct _IO_FILE;
namespace crt {
void CDECL _initterm(const _PVFV *ppfn, const _PVFV *end);
int CDECL _initterm_e(const _PIFV *ppfn, const _PIFV *end);
void CDECL _set_app_type(_crt_app_type type);
int CDECL _set_fmode(int mode);
int *CDECL __p__commode();
int *CDECL __p__fmode();
int CDECL _crt_atexit(void (*func)());
int CDECL _configure_narrow_argv(_crt_argv_mode mode);
_invalid_parameter_handler CDECL _set_invalid_parameter_handler(_invalid_parameter_handler newHandler);
int CDECL _controlfp_s(unsigned int *currentControl, unsigned int newControl, unsigned int mask);
int CDECL _configthreadlocale(int per_thread_locale_type);
int CDECL _initialize_narrow_environment();
int CDECL _set_new_mode(int newhandlermode);
char **CDECL _get_initial_narrow_environment();
char ***CDECL __p__environ();
char ***CDECL __p___argv();
int *CDECL __p___argc();
SIZE_T CDECL strlen(const char *str);
int CDECL strcmp(const char *lhs, const char *rhs);
int CDECL strncmp(const char *lhs, const char *rhs, SIZE_T count);
char *CDECL strcpy(char *dest, const char *src);
char *CDECL strncpy(char *dest, const char *src, SIZE_T count);
const char *CDECL strrchr(const char *str, int ch);
void *CDECL malloc(SIZE_T size);
void *CDECL calloc(SIZE_T count, SIZE_T size);
void *CDECL realloc(void *ptr, SIZE_T newSize);
void CDECL free(void *ptr);
void *CDECL memcpy(void *dest, const void *src, SIZE_T count);
void *CDECL memmove(void *dest, const void *src, SIZE_T count);
void *CDECL memset(void *dest, int ch, SIZE_T count);
int CDECL memcmp(const void *lhs, const void *rhs, SIZE_T count);
int CDECL __setusermatherr(void *handler);
int CDECL _initialize_onexit_table(void *table);
int CDECL _register_onexit_function(void *table, void (*func)());
int CDECL _execute_onexit_table(void *table);
void CDECL exit(int status);
void CDECL _cexit();
void CDECL _exit(int status);
void CDECL abort();
signal_handler CDECL signal(int signum, signal_handler handler);
void *CDECL __acrt_iob_func(unsigned int index);
int CDECL_NO_CONV __stdio_common_vfprintf(unsigned long long options, FILE *stream, const char *format, void *locale,
va_list args);
int CDECL_NO_CONV __stdio_common_vsprintf(unsigned long long options, char *buffer, SIZE_T len, const char *format,
void *locale, va_list args);
void CDECL qsort(void *base, SIZE_T num, SIZE_T size, sort_compare compare);
int CDECL puts(const char *str);
} // namespace crt