ÿÈÕC(4.×Ö·û´®×ª»»Æª)
×Ö·û´®×ª»»Æª
atof
atoi
atol
gcvt
strtod
strtol
strtoul
toascii
tolower
toupper
atof£¨½«×Ö·û´®×ª»»³É¸¡µãÐÍÊý£©
Ïà¹Øº¯Êý
atoi£¬atol£¬strtod£¬strtol£¬strtoul
±íÍ·Îļþ
#include <stdlib.h>
¶¨Ò庯Êý
double atof(const char *nptr);
º¯Êý˵Ã÷
atof()»áɨÃè²ÎÊýnptr×Ö·û´®£¬Ìø¹ýÇ°ÃæµÄ¿Õ¸ñ×Ö·û£¬Ö±µ½ÓöÉÏÊý×Ö»òÕý¸º·ûºÅ²Å¿ªÊ¼×öת»»£¬¶øÔÙÓöµ½·ÇÊý×Ö»ò×Ö·û´®½áÊøÊ±('\0')²Å½áÊø×ª»»£¬²¢½«½á¹û·µ»Ø¡£²ÎÊýnptr×Ö·û´®¿É°üº¬Õý¸ººÅ¡¢Ð¡Êýµã»òE(e)À´±íʾָÊý²¿·Ö£¬Èç123.456»ò123e-2¡£
·µ»ØÖµ
·µ»Ø×ª»»ºóµÄ¸¡µãÐÍÊý¡£
¸½¼Ó˵Ã÷
atof()ÓëʹÓÃstrtod(nptr,(char**)NULL)½á¹ûÏàͬ¡£
·¶Àý
/* ½«×Ö·û´®a Óë×Ö·û´®bת»»³ÉÊý×ÖºóÏà¼Ó*/
#include<stdlib.h>
main()
{
char *a=”-100.23”;
char *b=”200e-2”;
float c;
c=atof(a)+atof(b);
printf(“c=%.2f\n”,c);
}
Ö´ÐÐ
c=-98.23
¡¡
atoi£¨½«×Ö·û´®×ª»»³ÉÕûÐÍÊý£©
Ïà¹Øº¯Êý
atof£¬atol£¬atrtod£¬strtol£¬strtoul
±íÍ·Îļþ
#include<stdlib.h>
¶¨Ò庯Êý
int atoi(const char *nptr);
º¯Êý˵Ã÷
atoi()»áɨÃè²ÎÊýnptr×Ö·û´®£¬Ìø¹ýÇ°ÃæµÄ¿Õ¸ñ×Ö·û£¬Ö±µ½ÓöÉÏÊý×Ö»òÕý¸º·ûºÅ²Å¿ªÊ¼×öת»»£¬¶øÔÙÓöµ½·ÇÊý×Ö»ò×Ö·û´®½áÊøÊ±('\0')²Å½áÊø×ª»»£¬²¢½«½á¹û·µ»Ø¡£
·µ»ØÖµ
·µ»Ø×ª»»ºóµÄÕûÐÍÊý¡£
¸½¼Ó˵Ã÷
atoi()ÓëʹÓÃstrtol(nptr£¬(char**)NULL£¬10)£»½á¹ûÏàͬ¡£
·¶Àý
/* ½«×Ö·û´®a Óë×Ö·û´®bת»»³ÉÊý×ÖºóÏà¼Ó*/
#include<stdlib.h>
mian()
{
char a[]=”-100”;
char b[]=”456”;
int c;
c=atoi(a)+atoi(b);
printf(c=%d\n”,c);
}
Ö´ÐÐ
c=356
¡¡
atol£¨½«×Ö·û´®×ª»»³É³¤ÕûÐÍÊý£©
Ïà¹Øº¯Êý
atof£¬atoi£¬strtod£¬strtol£¬strtoul
±íÍ·Îļþ
#include<stdlib.h>
¶¨Ò庯Êý
long atol(const char *nptr);
º¯Êý˵Ã÷
atol()»áɨÃè²ÎÊýnptr×Ö·û´®£¬Ìø¹ýÇ°ÃæµÄ¿Õ¸ñ×Ö·û£¬Ö±µ½ÓöÉÏÊý×Ö»òÕý¸º·ûºÅ²Å¿ªÊ¼×öת»»£¬¶øÔÙÓöµ½·ÇÊý×Ö»ò×Ö·û´®½áÊøÊ±('\0')²Å½áÊø×ª»»£¬²¢½«½á¹û·µ»Ø¡£
·µ»ØÖµ
·µ»Ø×ª»»ºóµÄ³¤ÕûÐÍÊý¡£
¸½¼Ó˵Ã÷
atol()ÓëʹÓÃstrtol(nptr,(char**)NULL,10)£»½á¹ûÏàͬ¡£
·¶Àý
/*½«×Ö·û´®aÓë×Ö·û´®bת»»³ÉÊý×ÖºóÏà¼Ó*/
#include<stdlib.h>
main()
{
char a[]=”1000000000”;
char b[]=” 234
Ïà¹ØÎĵµ£º
JavaÖе÷ÓÃC/C++Éú³ÉµÄDLL
Ò»¡¢ Éú³ÉCµÄÍ·Îļþ
¡¡¡¡1. ±à¼Main.java
¡¡public class Main
¡¡¡¡{
¡¡¡¡public native static int getStrNum(byte str[], int strLen);
¡¡¡¡}
¡¡¡¡2. Éú³ÉÍ·Îļþ
¡¡¡¡°´win + r´ò¿ª“ÔËÐД´°¿Ú£¬ÊäÈë“cmd”£¬´ò¿ª ......
»Ø¹Ë֮ǰµÄƪ·ù£¬CÓïÑÔµÄÖ÷Ì岿·Ö»ù±¾ÒѾ½éÉÜÍêÁË¡£Ö®ËùÒÔûÓнéÉÜC++µÄÏà¹ØÌØÐÔÊÇÒòΪÔÚ֮ǰµÄÎÄÕÂÖÐCºÍC++ÔÚÕâЩ·½Ãæ¶¼Óй²ÐÔ£¬ËùÒÔÔÚÃæÏò¶ÔÏó֮ǰ¡£ÎÒÃÇÏȰÑÕâЩ¹²ÐÔ¸ø½éÉÜÍê¡£Ò²¾ÍÊÇ˵ÔÚ½éÉÜÃæÏò¶ÔÏó֮ǰ£¬ËùÓеÄÎÄÕ¶¼ÊÇCC++Öж¼ÄÜʹÓõġ£´ÓÕâµãÉÏÀ´¿´£¬ÏÖÔÚÕý¼«Á¦·Ü¶·ÓÚC++Õ½ÏßÉϵijõѧÕß»¹ÊǺÜÓÐÓô¦µÄ¡£
±¾Æª¼ÌÐ ......
extern "C"
¡¡¡¡extern "C" °üº¬Ë«Öغ¬Ò壬´Ó×ÖÃæÉϼ´¿ÉµÃµ½£ºÊ×ÏÈ£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“extern”µÄ£»Æä´Î£¬±»ËüÐÞÊεÄÄ¿±êÊÇ“C”µÄ¡£ÈÃÎÒÃÇÀ´Ïêϸ½â¶ÁÕâÁ½Öغ¬Òå¡£
¡¡¡¡£¨1£© ±»extern "C"ÏÞ¶¨µÄº¯Êý»ò±äÁ¿ÊÇexternÀàÐ͵ģ»
¡¡¡¡externÊÇC/C++ÓïÑÔÖбí ......
Ò»¡¢¸ÅÊö
̸µ½ÔÚlinuxϵͳϱàдI2CÇý¶¯£¬Ä¿Ç°Ö÷ÒªÓÐÁ½ÖÖ·½Ê½£¬Ò»ÖÖÊǰÑI2CÉ豸µ±×÷Ò»¸öÆÕͨµÄ×Ö·ûÉ豸À´´¦Àí£¬ÁíÒ»ÖÖÊÇÀûÓÃlinux I2CÇý¶¯Ìåϵ½á¹¹À´Íê³É¡£ÏÂÃæ±È½ÏÏÂÕâÁ½ÖÖÇý¶¯¡£
µÚÒ»ÖÖ·½·¨µÄºÃ´¦£¨¶ÔÓ¦µÚ¶þÖÖ·½·¨µÄÁÓÊÆ£©ÓУº
¡ñ ˼·±È½ÏÖ±½Ó£¬²»ÐèÒª ......
µ±¶ÁÕßÓÐÒ»¶¨c/c++»ù´¡
ÍÆ¼öµÄÔĶÁ˳Ðò:
level 1
´Ó<<essential c++>>¿ªÊ¼£¬¶ÌС¾«º·£¬¿ÉÒÔ¶Ôc++ÄܽøÒ»²½Á˽âÆäÌØÐÔ
ÒÔ<<c++ primer>>×÷×ÖµäºÍ¿ÎÍâ¶ÁÎÒòΪ̫ºñ²»¿ÉÄÜÒ»¿ÚÆø¿´Íê
level 2
È»ºó´Ó<<effective c++>>¿ªÊ¼×ªÖ°£¬ÕâÊÇÊ¥¾£¬Çë×ñÊØ10½ë£¬Òª¾³£¿´£¬Ã»Ê¾ÍÄÃÀ´··
......