Young87

SmartCat's Blog

So happy to code my life!

游戏开发交流QQ群号60398951

当前位置:首页 >跨站数据测试

C语言标准库(3)--#include<stdlib.h>

C语言标准库(3)--#include<stdlib.h>
                                                                             2014/11/27  by jxlijunhao
头文件<stdlib.h>定义了类型,宏和各种函数,这些函数用于内存管理,排序和查找,整型运算,字符串到数字的转换,伪随机数序列

字符串转换函数:
double atof (const char* str); //将字符转化为数字
#include<stdlib.h>
#include<stdio.h>
int main()
{
	double m;
	char buffer[256];
	fgets(buffer,256,stdin);
	m=atof(buffer);
	printf("%lf",m);
}
int atoi (const char * str);//将字符转化为整型
long int atol ( const char * str );//将字符转化为长整型

long int strtol (const char* str, char** endptr, int base);
将一个字符串转化成长整型 ,它的操作过程是这样的:依次扫描字符串,忽略字符前的空格,直到遇到数字或正负号才开始做转换,当再次遇到非数字或结束符将结果输出;
base 是指进制,2,10,16等
/* strtol example */
#include <stdio.h>      /* printf */
#include <stdlib.h>     /* strtol */

int main ()
{
  char szNumbers[] = "2001 60c0c0 -1101110100110100100000 0x6fffff";
  char * pEnd;
  long int li1, li2, li3, li4;
  li1 = strtol (szNumbers,&pEnd,10);
  li2 = strtol (pEnd,&pEnd,16);
  li3 = strtol (pEnd,&pEnd,2);
  li4 = strtol (pEnd,NULL,0);
  printf ("The decimal equivalents are: %ld, %ld, %ld and %ld.\n", li1, li2, li3, li4);
  return 0;
}
double strtod (const char* str, char** endptr);
unsigned long int strtoul (const char* str, char** endptr, int base);

随机数函数
int rand (void);
v1 = rand() % 100;         // v1 in the range 0 to 99
v2 = rand() % 100 + 1;     // v2 in the range 1 to 100
v3 = rand() % 30 + 1985;   // v3 in the range 1985-2014

void srand (unsigned int seed);//初始化随机数种子

#include <stdio.h>      /* printf, scanf, puts, NULL */
#include <stdlib.h>     /* srand, rand */
#include <time.h>       /* time */

int main ()
{
  int iSecret, iGuess;

  /* initialize random seed: */
  srand (time(NULL));

  /* generate secret number between 1 and 10: */
  iSecret = rand() % 10 + 1;

  do {
    printf ("Guess the number (1 to 10): ");
    scanf ("%d",&iGuess);
    if (iSecret<iGuess) puts ("The secret number is lower");
    else if (iSecret>iGuess) puts ("The secret number is higher");
  } while (iSecret!=iGuess);

  puts ("Congratulations!");
  return 0;
}

内存管理
void* malloc (size_t size)
void* calloc (size_t num, size_t size);
void* realloc (void* ptr, size_t size);
void free (void* ptr);

整型数运算
int abs (int n); 
long int labs (long int n);
double fabs (double x);


查找与分类
bsearch;
qsort












除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇: windows编译hadoop 2.x Hadoop-eclipse-plugin插件

下一篇: storm出现log4j-over-slf4j.jar和slf4j-log4j12.jar冲突

精华推荐