当前位置: 首页 > wzjs >正文

做网站怎样连数据库ui设计分为哪几类

做网站怎样连数据库,ui设计分为哪几类,优化大师优化项目有哪些,wordpress助手爱奇艺字符串转换为数值部分和子字符串首地址的函数有strtol(),strtoul()和strtod()三个函数。 1、strtol()函数 long int strtol(const char *str, char **endptr, int base) //当base0时,若字符串不是以"0","0x"和"0X"开头,则将数字部分按照10进制…

字符串转换为数值部分和子字符串首地址的函数有strtol(),strtoul()和strtod()三个函数。

1、strtol()函数

long int strtol(const char *str, char **endptr, int base)

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将数字部分按照10进制转换

//当base=0时,若字符串是以"0"开头,则将数字部分按照8进制进制转换

//当base=0时,若字符串是以"0x"和"0X"开头,则将数字部分按照16进制进转换

//当base=10时,字符串将字符串视为十进制字符串,则将数字部分按照10进制转换

//当base=2时,字符串将字符串视为2进制字符串,则将数字部分按照2进制转换

//当base=16时,字符串将字符串视为16进制字符串,则将数字部分按照16进制转换

//当base=8时,字符串将字符串视为8进制字符串,则将数字部分按照8进制转换

void Test_strtol(void)

{

char buf[15];//声明char型数组buf[]

int retValue;//声明int型变量(有符号32位)

char *p;//声明char型数组SubStringBuf[]

strcpy(buf,"+10GHIJ");

retValue=strtol(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=10,p指向"GHIJ"

printf("Value=%d\r\n",retValue);//串口输出Value=10

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"-1EFGH");

retValue=strtol(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=-1,p指向"EFGH"

printf("Value=%d\r\n",retValue);//串口输出Value=-1

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=EFGH"

else printf("No SubString\r\n");

strcpy(buf,"0x10GHIJ");

retValue=strtol(buf,&p,0);

//当base=0时,若字符串以"0x"或"0X"开头,则将其视为十六进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=0x10,p指向"GHIJ"

printf("Value=%d\r\n",retValue);//串口输出Value=16

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"010GHIJ");

retValue=strtol(buf,&p,0);

//当base=0时,若字符串以"0"开头,则将其视为八进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=8,p指向"GHIJ"

printf("Value=%d\r\n",retValue);//串口输出Value=8

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtol(buf,&p,10);

//当base=10时,字符串将字符串视为十进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=10,p指向"GHIJ"

printf("Value=%d\r\n",retValue);//串口输出Value=10

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtol(buf,&p,2);

//当base=2时,字符串将字符串视为二进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=2,p指向"GHIJ"

printf("Value=%d\r\n",retValue);//串口输出Value=2

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtol(buf,&p,16);

//当base=2时,字符串将字符串视为16进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=16,p指向"GHIJ"

printf("Value=%d\r\n",retValue);//串口输出Value=16

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtol(buf,&p,8);

//当base=2时,字符串将字符串视为8进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=8,p指向"GHIJ"

printf("Value=%d\r\n",retValue);//串口输出Value=8

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

retValue=0;

}

2、strtoul()函数

unsigned long int strtoul(const char *str, char **endptr, int base)

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将数字部分按照10进制转换

//当base=0时,若字符串是以"0"开头,则将数字部分按照8进制进制转换

//当base=0时,若字符串是以"0x"和"0X"开头,则将数字部分按照16进制进转换

//当base=10时,字符串将字符串视为十进制字符串,则将数字部分按照10进制转换

//当base=2时,字符串将字符串视为2进制字符串,则将数字部分按照2进制转换

//当base=16时,字符串将字符串视为16进制字符串,则将数字部分按照16进制转换

//当base=8时,字符串将字符串视为8进制字符串,则将数字部分按照8进制转换

#include "string.h" //strcpy()需要包含string.h头文件

#include "stdlib.h" //strtol()和strtoul()需要包含stdlib.h头文件

void Test_strtoul(void)

{

char buf[15];//声明char型数组buf[]

uint32_t retValue;//声明uint32_t型变量(有符号32位)

char *p;//声明char型数组SubStringBuf[]

strcpy(buf,"+10GHIJ");

retValue=strtoul(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=10,p指向"GHIJ"

printf("Value=%u\r\n",retValue);//串口输出Value=10

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"-1EFGH");

retValue=strtoul(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=-1,p指向"EFGH"

printf("Value=%u\r\n",retValue);//串口输出Value=-1

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=EFGH"

else printf("No SubString\r\n");

strcpy(buf,"0x10GHIJ");

retValue=strtoul(buf,&p,0);

//当base=0时,若字符串以"0x"或"0X"开头,则将其视为十六进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=0x10,p指向"GHIJ"

printf("Value=%u\r\n",retValue);//串口输出Value=16

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"010GHIJ");

retValue=strtoul(buf,&p,0);

//当base=0时,若字符串以"0"开头,则将其视为八进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=8,p指向"GHIJ"

printf("Value=%u\r\n",retValue);//串口输出Value=8

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtoul(buf,&p,10);

//当base=10时,字符串将字符串视为十进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=10,p指向"GHIJ"

printf("Value=%u\r\n",retValue);//串口输出Value=10

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtoul(buf,&p,2);

//当base=2时,字符串将字符串视为二进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=2,p指向"GHIJ"

printf("Value=%u\r\n",retValue);//串口输出Value=2

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtoul(buf,&p,16);

//当base=2时,字符串将字符串视为16进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=16,p指向"GHIJ"

printf("Value=%u\r\n",retValue);//串口输出Value=16

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"10GHIJ");

retValue=strtoul(buf,&p,8);

//当base=2时,字符串将字符串视为8进制字符串

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=8,p指向"GHIJ"

printf("Value=%u\r\n",retValue);//串口输出Value=8

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

retValue=0;

}

测试strtol()和strtoul()不同之处

当将“保存的返回值retValue”声明uint32_t型变量(无符号32位)时,strtoul()和strtol()功能有点点区别,当“字符串的数字部分小于0”时,strtoul()的值为0x100000000+负数,例如字符串“-1”,它会返回retValue=0x100000000-1=0xFFFFFFFF=4294967295。当“字符串的数字部分大于0x7FFFFFFF”时,strtol()的返回值为负数”,例如字符串“0xFFFFFFFF”,它会返回retValue=0xFFFFFFFF=-1

#include "string.h" //strcpy()需要包含string.h头文件

#include "stdlib.h" //strtol()和strtoul()需要包含stdlib.h头文件

void Test_strtol_strtoul(void)

{

char buf[15];//声明char型数组buf[]

int retValue1;//声明int型变量(有符号32位)

uint32_t retValue2;//声明uint32_t型变量(无符号32位)

char *p;//声明char型指针p

strcpy(buf,"4294967295EFGH");

retValue1=strtol(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue1=0x7FFFFFFF,p指向"EFGH"

printf("Value=%d\r\n",retValue1);//串口输出Value=2147483647

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=EFGH"

else printf("No SubString\r\n");

strcpy(buf,"4294967295EFGH");

retValue2=strtoul(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue2=4294967295,p指向"EFGH"

printf("Value=%u\r\n",retValue2);//串口输出Value=4294967295

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=EFGH"

else printf("No SubString\r\n");

strcpy(buf,"-1EFGH");

retValue1=strtol(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue1=-1,p指向"EFGH"

printf("Value=%d\r\n",retValue1);//串口输出Value=-1

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=EFGH"

else printf("No SubString\r\n");

strcpy(buf,"-1EFGH");

retValue2=strtoul(buf,&p,0);

//当base=0时,若字符串不是以"0","0x"和"0X"开头,则将其视为十进制

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue2=0x100000000-1=4294967295,p指向"EFGH"

printf("Value=%u\r\n",retValue2);//串口输出Value=4294967295

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=EFGH"

else printf("No SubString\r\n");

retValue2=0;

}

3、strtod()函数

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

//将"字符串的数字部分"转换为数值返回,同时将"非数字部分的首地址"返回,保存到endptr

void Test_strtod(void)

{

char buf[15];//声明char型数组buf[]

double retValue;//声明double型变量(64位)

char *p;//声明char型数组SubStringBuf[]

strcpy(buf,"+10.5GHIJ");

retValue=strtod(buf,&p);

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=10.5,p指向"GHIJ"

printf("Value=%0.1f\r\n",retValue);//串口输出Value=10.5

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

strcpy(buf,"-10.5GHIJ");

retValue=strtod(buf,&p);

//将"字符串的数字部分"转换为数值返回,保存到retValue中

//同时将"非数字部分的首地址"返回,保存到p

//retValue=-10.5,p指向"GHIJ"

printf("Value=%0.1f\r\n",retValue);//串口输出Value=-10.5

if(p)printf("SubString=%s\r\n",p);//串口输出"SubString=GHIJ"

else printf("No SubString\r\n");

retValue=0;

}

http://www.dtcms.com/wzjs/807197.html

相关文章:

  • 彩票网站自己可以做吗asp 企业网站
  • 网站建设中项目经理的职责中山做网站好的公司
  • php网站权限设置云梦县建设安全网站
  • 动漫网站怎么建设重庆市
  • 网站建设与管理实施方案wordpress rest post
  • 收费的网站如何免费自己做的网站不显示图片
  • asp网站导航怎么做湖南建设银行官网网站首页
  • 工会网站建设比较好的工会做直播券的网站有多少钱
  • 网站改手机版推广产品的方法
  • 做网站一般图片多大简约大方的网站
  • 昆山网站建设 技术支持 力得网络做网站的旅行社
  • 重庆建网站的公司集中在哪里企业网站cms 系统
  • 深圳专业网站建设公司现在流行的网站制作工具
  • 中国建筑网站平台有哪些博文阅读网站建设
  • 扶风做网站特卖网站怎么做
  • 珠海网站建设杰作wordpress加载模板
  • 黑客入侵别人网站做seo揭阳专业做网站公司
  • 营销型旅游网站建设wpf做网站
  • 怎么查看网站开发使用什么技术排版网页
  • 深圳网站平台建设余杭门户网站
  • 手工蛋糕网站开发报告正规的现货交易平台
  • 12306网站开发投资wordpress根据字段判断
  • 湛江制作网站多少钱装修设计网站哪家好
  • 微网站建设的第一步wordpress如何加链接
  • 正规接单网站电脑怎么做网站
  • 安徽省建设干部学校网站首页成都集团网站设计推荐
  • 自身网站的平台建设北京市网站开发
  • 网站建设不挣钱企业免费自助建站平台
  • 质量好网站建设价格seo站长
  • 网站域名密码cgi做网站