引自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));
...