精华内容
下载资源
问答
  • chardouble

    千次阅读 2015-06-04 10:48:03
    #include "stdafx.h" #include void charToDouble(const char* ch, double& res ) { sscanf(ch,"%lf",&res); }int main(int argc, char* argv[]) { char test[256] = "12345.678"; // double x = 0
    #include "stdafx.h"
    #include <stdio.h>
    
    
    void charToDouble(const char* ch, double& res )
    {
        sscanf(ch,"%lf",&res);
    }
    
    int main(int argc, char* argv[])
    {
    
        char test[256] = "12345.678";
    //  double x = 0.0;
    //  sscanf(test,"%lf",&x);  //%f对应float, %lf对应double.
    
        double x;
        charToDouble(test,x);
    
        printf("%.3f\n",x);
        return 0;
    }
    
    展开全文
  • int、chardouble与byte相互转换
  • c++ java jstring转char* doublechar*

    千次阅读 2017-03-04 23:02:07
    char* jstringToChar(JNIEnv *env, jstring jstr)  {  char * rtn = NULL;  jclass clsstring = env->FindClass("java/lang/String");  jstring strencode = env->NewStringU

    char* jstringToChar(JNIEnv *env, jstring jstr)

        {

            char * rtn = NULL;

            jclass clsstring = env->FindClass("java/lang/String");

            jstring strencode = env->NewStringUTF("UTF-8");

            jmethodID mid = env->GetMethodID(clsstring, "getBytes","(Ljava/lang/String;)[B");

            jbyteArray barr= (jbyteArray)env->CallObjectMethod(jstr,mid,strencode);

            jsize alen = env->GetArrayLength(barr);

            jbyte * ba = env->GetByteArrayElements(barr,JNI_FALSE);

            if(alen > 0)

            {

                rtn = (char*)malloc(alen+1);//new char[alen+1];

                memcpy(rtn,ba,alen);

                rtn[alen]=0;

            }

            env->ReleaseByteArrayElements(barr,ba,0);

            

            return rtn;

        }





    Double转char*

    char buf1[20];

    double temp = 10.00000001;

    sprintf(buf1, "%.8lf",temp);






    展开全文
  • char* to double

    千次阅读 2013-03-14 19:56:32
    #include #include ...double char_x_to_double(char* input_char) { int flag = 0; double sum = 0.0; double divisor = 10.0; char *p = input_char; if (*input_char) { //所有输入的数值都
    #include<iostream>
    #include <string.h>
    using namespace std;
    double char_x_to_double(char* input_char)
    {
    	int flag = 0;
    	double sum = 0.0;
        double divisor = 10.0;
    	char *p = input_char;
    	if (*input_char)
    	{
    	//所有输入的数值都必须在(0~9,+,-,.)之中
    		while(*p)
    		{
    		if (!((*p=='+') || (*p=='-')||(*p=='.')|| ((*p>='0') && (*p<='9'))))	
    		{
    				cout<<"输入非法!请输入数值型参数!例如:12.3,125,-12.6等"<<endl;
    			    return 0.0;
    		    }
    		p++;
    		}
    
    		//int j=0;
    		if (*input_char == '+')
    			{
    				flag = 1;
    		       input_char++; 
    			   //j++;
    			   //cout<<"(flag + )j="<<j<<endl;
    		    }
    		if (*input_char == '-')
    			{
    				flag = -1;
    				input_char++;
    				   //j++;
    			   //cout<<"(flag - )j="<<j<<endl;
    		    }
    		
    		//计算小数点前面的和
    		while(*input_char != '.' && *input_char)
    			{
    				sum = sum*10 + (double(*input_char) - 48); //0的ascii码是48
    				
    			  // cout<<"j"<<*input_char<<endl;
    			   input_char++;
    				   //j++;
    		    }
    	
    		if (*input_char=='.')
    			{
    				input_char++;
    				//计算小数点后面的和
    				while(*input_char)
    				{
    			
    				sum = sum + ( double(*input_char)-48)/divisor;
    				divisor *= 10;
    				input_char++;
    				//j++;
    				//cout<<"j"<<j<<endl;
    			}
    		}
    		if (flag == 1)
    			return sum;
    		if (flag == -1)
    			return -sum;
    		return sum;
    
    	}
    	else
    	{
    	cout<<"输入为空!"<<endl;;
    	return 0.0;
    	}
    
    }
    int main()
    {
    	double out_double;
    	char s1[]="-12.34";
    	cout<<"输入s1[]="<<s1<<endl;
    	out_double=char_x_to_double(s1);
    	cout<<"输出的double类型数为:"<<out_double<<endl;
    
    	char s2[]="+23.45";
    	cout<<"输入s2[]="<<s2<<endl;
    	out_double=char_x_to_double(s2);
    	cout<<"输出的double类型数为:"<<out_double<<endl;
    	
    	char s3[]="3456";
    	cout<<"输入s3[]="<<s3<<endl;
    	out_double=char_x_to_double(s3);
    	cout<<"输出的double类型数为:"<<out_double<<endl;
    
    	
    
    	char s4[]="+3456789";
    	cout<<"输入s4[]="<<s4<<endl;
    	out_double=char_x_to_double(s4);
    	cout<<"输出的double类型数为:"<<out_double<<endl;
    
    	char s5[]="";
    	cout<<"输入s5[]="<<s5<<endl;
    	out_double=char_x_to_double(s5);
    	cout<<"输出的double类型数为:"<<out_double<<endl;
    
    	char s6[]="abcd";
    	cout<<"输入s6[]="<<s6<<endl;
    	out_double=char_x_to_double(s6);
    	cout<<"输出的double类型数为:"<<out_double<<endl;
    	return 0;
    	
    }
    

    展开全文
  • qt QString 与char int double的转化

    千次阅读 2012-04-02 10:01:00
    原文地址:... char * 与 const char *的转换 char *ch1="hello11"; const char *ch2="hello22"; ch2 = ch1;//不报错,但有警告 ch1 = (char *)ch2; char 转换为 QString 其

    原文地址:http://blog.sina.com.cn/s/blog_5c70dfc80100v0so.html

    char * 与 const char *的转换

    char *ch1="hello11";
    const char *ch2="hello22";
    ch2 = ch1;//不报错,但有警告
    ch1 = (char *)ch2;

    char 转换为 QString
    其实方法有很多中,我用的是:
    char a='b';
    QString str;
    str=QString(a);

    QString 转换为 char
    方法也用很多中
    QString str="abc";
    char *ch;
    ch = str.toLatin1.data();

    QByteArray 转换为 char *
    char *ch;//不要定义成ch[n];
    QByteArray byte;
    ch = byte.data();

    char * 转换为 QByteArray
    char *ch;
    QByteArray byte;
    byte = QByteArray(ch);

    QString 转换为 QByteArray
    QByteArray byte;
    QString string;
    byte = string.toAscii();


    QByteArray 转换为 QString
    QByteArray byte;
    QString string;
    string = QString(byte);
    这里再对这俩中类型的输出总结一下:
    qDebug()<<"print";
    qDebug()<<tr("print");
    qDebug()<<ch;(ch 为char类型)
    qDebug()<<tr(ch);
    qDebug()<<byteArray;(byteArray是QByteArray类型)
    qDebug()<<tr(byteArray);
    qDebug()<<str;(str 为Qstring类型)
    但是qDebug()<<tr(str);是不可以的,要想用tr()函数输出QString类型的字符则要如下:
    qDebug()<<tr(str.toLatin1);

    int 转 QString
    int a=10;
    QString b;
    b=QString::number(a)

    QString 转int
    QString a="120"
    int b;
    b=a.toInt()

    char * 与 const char *的转换
    char *ch1="hello11";
    const char *ch2="hello22";
    ch2 = ch1;//不报错,但有警告
    ch1 = (char *)ch2;

    char 转换为 QString
    其实方法有很多中,我用的是:
    char a='b';
    QString str;
    str=QString(a);

    QString 转换为 char
    方法也用很多中
    QString str="abc";
    char *ch;
    ch = str.toLatin1.data();

    QByteArray 转换为 char *
    char *ch;//不要定义成ch[n];
    QByteArray byte;
    ch = byte.data();

    char * 转换为 QByteArray
    char *ch;
    QByteArray byte;
    byte = QByteArray(ch);

    QString 转换为 QByteArray
    QByteArray byte;
    QString string;
    byte = string.toAscii();


    QByteArray 转换为 QString
    QByteArray byte;
    QString string;
    string = QString(byte);
    这里再对这俩中类型的输出总结一下:
    qDebug()<<"print";
    qDebug()<<tr("print");
    qDebug()<<ch;(ch 为char类型)
    qDebug()<<tr(ch);
    qDebug()<<byteArray;(byteArray是QByteArray类型)
    qDebug()<<tr(byteArray);
    qDebug()<<str;(str 为Qstring类型)
    但是qDebug()<<tr(str);是不可以的,要想用tr()函数输出QString类型的字符则要如下:
    qDebug()<<tr(str.toLatin1);

    int 转 QString
    int a=10;
    QString b;
    b=QString::number(a)

    QString 转int
    QString a="120"
    int b;
    b=a.toInt()

    另一个

    1 QString --> string

    QString.toStdString();

    2 string --> QString

    QString::fromStdString(string)

    3 QString --->int,double,char *

    QString::toInt()

    QString::toDouble()

    QString.toStdString().c_str();

    4 int double char* --->string

    可以采用<sstream>里的stringstream

    以int 为例,int a = 3;

    stringstream ss;

    string strInt;

    ss<<a;

    ss>>strInt;

    其他两个一样。

    5 int double char*装QString


    展开全文
  • 32位 64位 char 1 1 int 4 大多数4,少数8 long 4 8 float 4 4 ...double 8 8 指针 4 8 32/64位操作系统,数据类型字节数对比 常用数据类型对应字节数  可用如sizeof(char),si
  • Qt QString 与char int double的转化

    千次阅读 2010-12-18 19:09:00
    char * 与 const char *的转换 char *ch1="hello11"; const char *ch2="hello22"; ch2 = ch1;//不报错,但有警告 ch1 = (char *)ch2; <br /> char 转换为 QString ...
  • int、chardouble与byte相互转换

    千次阅读 2008-11-22 09:46:00
    int、chardouble与byte相互转换Category: Java //整数到字节数组的转换 public static byte[] intToByte(int number) { int temp = number; byte[] b=new byte[4]; for (int i=b.length-1;i>-1;i–){ b[i] =...
  • char是C/C++整型数据中比较古怪的一个,其它的如int/long/short等不指定signed/unsigned时都默认是signed,但char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的,有些编译器如pSOS的编译器...
  • c++ char*转int double

    千次阅读 2018-08-31 22:08:21
    正负皆可转;靠自己勤劳的双手与智慧...上代码,可以转载。有好的逻辑请留言,万般感谢! double sqrt(double sum,int i) { double root = sum; while (i>...double hexToDec(char *str) { i...
  • A{1,2} % 提取第一行第二列的元胞里面的字符串‘wang’,输出‘char’格式,就是原格式 %------------------------------------ A(2,1) % 注意! 换成圆括号之后,输出的均为元胞结构,仅仅只具有提取功能{‘2’...
  • 请问float 型 double 型的区别,以及 char String 型的不同
  • matlab中doublechar和cell的互转

    万次阅读 多人点赞 2017-12-23 17:20:18
    哎,对会的人来说可能真的是一个函数的事,但是对于我这种对matlab不熟的初学者,真的不是那么简单,其中涉及各种转换,比如doublechar,cell的互转。 比如我有一个txt文档是这样子的: 我要的信息是该txt文档...
  • 就是,不用java的系统函数,把char转换成double,java菜鸟求帮忙~
  • CString string char * int double float 之间转化 将每种转化 都有不同的实现方法 以及相关知识 进行总结
  • java中char和string float与double区别

    千次阅读 2015-01-18 16:57:30
    Java 中 char String 的区别 1.char表示字符,定义时用单引号,只能存储一个字符,如char c='x'; 而String表示字符串,定义时用双引号,可以存储一个或多个字符,如String name="tom";   2.char是基本数据...
  • char转换为double;int转换为char

    千次阅读 2008-01-23 15:03:00
    char转换为doublechar* chaValue = "116.397380;39.908395";double x = 0.0; double y = 0.0; sscanf(chaValue, "%lf;%lf", &x, &y);int转换为charint m_btCommPort = 1; int m_dwBaudrate = 4800;CString ...
  • char转换为doublechar* chaValue = "116.397380;39.908395";double x = 0.0; double y = 0.0; sscanf(chaValue, "%lf;%lf", &x, &y);int转换为charint m_btCommPort = 1; int m_dwBaudrate = 4800;CString ...
  • 1、如何将字串 String 转换成整数 int? int i = Integer.valueOf(my_str).intValue(); int i=Integer.parseInt(str);...2、如何将字串 String 转换成Integer ?...double ss=Double.parseDouble(s);
  • char字符串转double浮点函数——strtod

    万次阅读 2017-06-06 11:00:50
    char字符串转double浮点函数——strtod
  • VS2010将double转为char

    2016-01-07 03:14:13
    double在内存中为8个字节存放,现在要将这8个字节取出赋给char型数组,该怎么做?如double A=10;char ch[8];接下来怎么做?
  • Arduino中char数组转double型的坑

    千次阅读 2018-03-23 10:13:33
    进一步的处理需要将char数组转为double,但使用atof函数也好,strtod函数也好都无法得到正确精度的数字。NEMA协议中经纬度格式为:维度:ddmm.mmmmm经度:dddmm.mmmmm最终发现,arduino是8位机,根本不存在double型...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 613,751
精华内容 245,500
关键字:

char和double