【C++】int、const char*、char*、char、string之间的转换

#include "stdafx.h"
#include<string>
#include<vector>
#include<iostream>
#include<sstream>
#include<stdio.h>
#include<stdlib.h>

using namespace std;

//sstream
string int2str1(int n){
    ostringstream oss;
    oss << n;
    string s = oss.str();
    return s;
}

//sprintf
string int2str2(int n){
    char temp[64];
    sprintf_s(temp, "%d", n);
    string str = temp;
    return str;
}

//sstream
int str2int1(string s){
    int n;
    istringstream iss;
    iss.clear();
    iss.str(s);
    iss >> n;
    return n;
}

//sscanf
int str2int2(string s){
    int n;
    sscanf_s(s.c_str(), "%d", &n);  //scanf前面加s用于把str输入到n中
    return n;
}

//stoi
int str2int3(string s, int base){ // base:进制
    int n = stoi(s, nullptr, base);
    return n;
}

//c_str
const char* str2Cchar(string s){
    //const char* ss = s.c_str(); //出错,因为s会被析构,ss指向垃圾内容
    char c[20];
    strcpy_s(c, s.c_str());

    return c;
}

//atoi
int Cchar2int(const char* s){
    //char buffer[100];
    int n = atoi(s);
    return n;
}

char* int2char(int n){
    char buffer[100];
    _itoa_s(n, buffer, 10);
    return buffer;
}

int _tmain(int argc, _TCHAR* argv[])
{
    //cout << str2int1("1234") << endl;
    //cout << str2int2("1234") << endl;
    //cout << int2str1(1234) << endl;
    //cout << int2str1(1234) << endl;

    //string s1 = "123455";
    //const char* ss1 = str2Cchar(s1);

    //char s2[] = "123455";
    //const char* ss2 = s2;
    //cout << Cchar2int(ss2) << endl;

    char* c = int2char(1234);
    cout << *c << endl;

    return 0;
}
时间: 2024-12-27 13:12:23

【C++】int、const char*、char*、char、string之间的转换的相关文章

char* 、const char*和string之间的转换

1. const char* 和string 转换 (1) const char*转换为 string,直接赋值即可. EX: const char* tmp = "tsinghua". string s = tmp; (2) string转换为const char*,利用c_str() EX:  string s = "tsinghua"; const char*tmp = s.c_str(); 2. char*和const char*之间的转换 (1) cons

C# char[]与string之间的转换 byte[]与string之间的转化

1.char[]与string之间的转换 //string 转换成 Char[] string str="hello"; char[] arr=str.ToCharArray(); //Char[] 转换成 string string str1 = new string(arr); 2.byte[]与string之间的转化 string str = "你好,hello"; byte[] bytes; //byte[] 转换成 string bytes = Encod

Java 带分隔字符串、字符串数组和 ArrayList&lt;String&gt; 之间的转换

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 一.先来认识一下标题说的这三件东西,也许描述的不清楚,但有了下面的例子,就不会有歧义了 1.带分隔字符串是这样的: String seperate

char*,const char*,char[],string之间的转换问题。

#include <iostream> #include <stdlib.h> #include <string> using namespace std; int main() { // string和const char*互转 const char* a; string str_1 = "my name is pang"; a = str_1.c_str(); cout<<a<<endl; //const char*转st

C#中char[]与string之间的转换

string 转换成 Char[] string ss = "abcdefg"; char[] cc = ss.ToCharArray(); Char[] 转换成string string s = new string(cc); 此外,byte[] 与 string 之间的装换 byte[] bb = Encoding.UTF8.GetBytes(ss); string s = Encoding.UTF8.GetString(bb); 我们也可以利用 StringBuilder 来进行

【转】Javabyte[]数组和十六进制String之间的转换Util------包含案例和代码

原文网址:http://blog.csdn.net/caijunjun1006/article/details/11740223 Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示(23 + 22 + 21 + 20 = 15),所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的16进制字符H和L,并组合起来得到byte转换到16进制字符串的结果new String(H) + new String(L)

Java Int类型与字符,汉字之间的转换

/** * java 中的流主要是分为字节流和字符流 * 再一个角度分析的话可以分为输入流和输出流 * 输入和输出是一个相对的概念 相对的分别是jvm虚拟机的内存大小 * 从另一个角度讲Java或者用Java开发的其他软件只是一个工具而已 * 你可以从几个角度进行深入,一个是利用好工具,一个是改造工具,一个是制造工具 */ try { BufferedReader bufferedReader=new BufferedReader(new FileReader(new File("D:\\ES笔

学习笔记之基本数据类型-包装类-String之间的转换

基本类型              包装类                String类 int->Integer   :             Integer构造器 Integer-> int  :   Integer.intValue()方法 int -> String  :  Integer.toString方法,String.valueof()方法 String -> int  :  Integer.parseInt()方法 Integer -> String :

c++ 中double与string之间的转换,char *

/* * main.cpp * * Created on: Apr 7, 2016 * Author: lizhen */ #include <iostream> //#include "MySqrt.h" #include <math.h> #include <vector> #include <typeinfo> #include <exception> #include <stdexcept> #includ