引自input2.Cnode
int getfloat(char *s, double *y)
/*
**-----------------------------------------------------------
** Input: *s = character string ;输入:字符串
** Output: *y = floating point number ;输出:doulbe类型的指针
** returns 1 if conversion successful, 0 if not 若是转换成功返回1,不然返回0
** Purpose: converts string to floating point number ;做用:将一个字符串转成doulbe类型数值
**-----------------------------------------------------------
*/
{
char *endptr;
*y = (double) strtod(s,&endptr);
if (*endptr > 0) return(0);
return(1);
}数组
------------------------------------------------------------------------- 函数
1.strtod(const char *nptr,char **endptr);
表头文件
定义函数
double strtod(const char *nptr,char **endptr);
函数说明
strtod()会扫描参数nptr
字符串,跳过前面的空格字符,直到赶上数字或正负符号才开始作转换,到出现非数字或字符串结束时('\0')才结束转换,并将结果返回。若endptr不为NULL,则会将遇到不合条件而终止的nptr中的
字符
指针由endptr传回。参数nptr字符串可包含正负号、小数点或E(e)来表示指数部分。如123.456或123e-2。
返回值
表头文件 #include <stdlib.h>
定义函数 double atof(const char *nptr);
函数说明 atof()会扫描参数nptr
字符串,跳过前面的空格字符,直到赶上数字或正负符号才开始作转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。参数nptr字符串可包含正负号、小数点或E(e)来表示指数部分,如123.456或123e-2。
3.memset
void *memset(void *s, char ch,
size_t n);
函数解释:将s中前n个字节 (typedef unsigned int size_t)用 ch 替换并返回 s 。
memset:做用是在一段内存块中填充某个给定的值,它是对较大的
结构体或
数组进行清零操做的一种最快方法
e.g:
marked = (char *) calloc(Nnodes+1,sizeof(char)); //开辟连续的全部节点内存空间
ERRCODE(MEMCHECK(marked));
if (!errcode)
{
memset(marked,0,(Nnodes+1)*sizeof(char));
...