Chinaunix首页 | 论坛 | 博客
  • 博客访问: 127806
  • 博文数量: 11
  • 博客积分: 194
  • 博客等级: 入伍新兵
  • 技术积分: 190
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-24 08:20
文章分类

全部博文(11)

文章存档

2013年(8)

2012年(3)

分类: C/C++

2013-05-02 10:07:11

	

该系列博文主要参考自 cppreference.com 和 cplusplus.com

由于博主水平有限,内容仅供参考

cstdlib 这个头文件比较复杂,有各种东西。 String conversion (字符串转换)


atof atoi atol atoll(c++11)

函数原型:

double atof(const char *str);  (该函数较为特殊,atof却转为了double类型,其余均正常)

作用:

字符串转为double类型。


strtod strtof(c++11) strtol strtold(c++11) strtoll(c++11) strtoul strtoull(c++11)

函数原型:

double strtod(const char *str, char **endptr);

作用:

字符串转为double类型,endptr指向剩余部分的开头。(其余类似) 



Pseudo-random sequence generation(伪随机序列的生成)

rand srand

函数原型:

int rand();

void srand(unsigned int seed);

作用:

这两个函数用于产生随机数。srand函数来设置随机种子,一般选取系统时间,rand函数产生随机数。 



Dynamic memory management(动态内存管理)

malloc calloc realloc free

函数原型:

void *malloc(size_t size);

void *calloc(size_t num, size_t size);

void *realloc(void *prt, size_t size);

void free(void *ptr);

作用:

malloc:分配size字节大小的空闲存储空间,若成功,返回内存块的最低地址,若失败,返回NULL

calloc:分配num个size字节大小的存储空间,若成功,返回内存块的最低低至,若失败,返回NULL

realloc:重新分配size字节大小的存储空间,若成功,返回内存块的最低地址,若失败,返回NULL

free:释放以上三个函数临时分配的空间 



Environment(环境)

abort exit quick_exit(c++11) _Exit(c++11) atexit at_quick_exit(c++11) system getenv

函数原型:

void abort();

void exit(int exit_code);

void quick_exit(int exit_code);

void _Exit(int exit_code);

int atexit(void (*func)());

int at_quick_exit(void (*func)());

int system(const char *command);

const char *getenv(const char *env_var);

作用:

abort:导致程序异常终止,不进行清理

exit:导致程序正常终止,进行清理

quick_exit:导致程序正常终止,不完全清理

_Exit:导致程序正常终止,不进行清理

atexit:程序正常终止时,执行函数func

at_qucik_exit:程序被quick_exit终止时,执行函数func

system:执行系统命令

getenv:获得环境变量 



Searching and sorting(查找与排序)

bsearch qsort

函数原型:

void *bsearch(const void *key, const void *base, size_t num, size_t size, int (*compar)(const void *,const void *));

void qsort(void *base, size_t num, size_t size, int (*compar)(const void *, const void *));

作用:

二分查找与快排(这里不做赘述)
 



Integer arithmethics(整数运算)

abs div labs ldiv llabs lldiv

函数原型:

int abs(int n);

div_t div(int numer, int denom);

(其余类似)

作用:

取绝对值与整除(div_t后文会讲到) 




Multibyte characters(多字节字符)

mblen mbtowc wctomb

函数原型:

int mblen(const char *pmb, size_t max);

int mbtowc(wchar_t *pwc, char *pmb, size_t max);

int wctomb(char *pmb, wchar_t wc);

作用:

mblen:获得多字节字符的长度

mbtowc:多字节序列转换为宽字符

wctomb:宽序列转换为多字节字符 


Multibyte strings(多字节字符串)

mbstowcs wcstombs

函数原型:

size_t mbstowcs(wchar_t *dest, const char *src, size_t max);

size_t wcstombs(char *dest, const wchar_t *src, size_t max);

作用;

mbstowcs:多字节字符字符串转换为宽字符字符串

wcstombs:宽字符字符串转换为多字节字符字符串 




Macro constants(宏常量)

EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX NULL RAND_MAX

定义:

EXIT_FAILURE 错误结束

EXIT_SUCCESS 正确结束

MB_CUR_MAX 多字节字符的最大值

NULL 空字符串

RAND_MAX rand函数返回的最大值 




Types(类型)

div_t ldiv_t lldiv_t(c++11) size_t

定义:

typedef struct {

  int quot;

  int rem;

} div_t;

ldiv_t lldiv_t 类似

typedef unsigned int size_t;

作用:

div_t 为div函数的返回值类型,quot为商,rem为余数




阅读(2272) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

lyklinux2013-05-02 10:08:03

受不了,格式蛋疼