#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 <…
恩,有的编译器初始化时候会产生这样的参数 argc是命令行总的参数个数,argv[]是argc个参数,其中第0个参数是程序的全名 1. 几种C++ 常见的参数种类 int main(void); int main(); int main(int argc, char **argv);   //等价于int main(int argc, char *argv[]),是否等价呢?是不是前一个可以表示任意长度的任意个数组,后一个只是定长的任意个数的数组?见下面 int main(int argc, c…
char * p = "abc"与const char *p = "abc"的区别是什么呢? 第一个语句会产生问题: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings] 此时我们只需要改成第二个用法警告就消失了,这是为什么呢? 我们来分别理解以下两个语句,首先要清楚的是char * p语句定义的p是一个指针变量,假设我们用的是第一个语句,那么我们所表达的意思…
在写代码常常都会写char * p ="hello";这样的代码,虽然不是错误,但却不建议这样用.应该加const修饰.这句话背后的内涵是什么?下面就刨根问底一下:) 这个行为在不同的c和c++的编译器上有会不同的行为,应该说char *a = "hello world";这种写法不能算错误的写法,所以c编译器不报错也不警告.早期的K&C认 为这是完全合法的,但从K&C第二版标准开始就明确指出“修改string literal的结果是未定义的,字符串…
char & operator[](int i);const char & operator[](int i);/*const char & operator(int i);*/编译出错:error C2556: 'const char &MyString::operator [](int)' : overloaded function differs only by return type from 'char &MyString::operator [](int…
先说些题外话,今天学习execve(2)的使用,由于书上代码使用的是C89标准,所以下面这种代码都被我修改了 char* s[] = { "aaa", "bbb", "cc" }; 也就是在char前面加个const,因为"aaa"."bbb"."cc"都是字符串字面值(string literal),在C++标准中string literal只能转换成const char*,原因是即使…
C++ char*,const char*,string,int 的相互转换   1. string转const char* string s ="abc";const char* c_s = s.c_str(); 2. const char*转string    直接赋值即可 const char* c_s ="abc";string s(c_s);  3. string转char* string s ="abc";char* c;consti…
一.int 和string的相互转换 1 int 转化为 string c++ //char *itoa( int value, char *string,int radix); // 原型说明: // value:欲转换的数据. // string:目标字符串的地址. // radix:转换后的进制数,可以是10进制.16进制等. // 返回指向string这个字符串的指针 int aa = 30; char c[8]; itoa(aa,c,16); cout<<c<<endl;…
VS2013 测试 以下测试加入头文件: # include <string>#include <cstdlib>using namespace std; //--------------------------------------------------------------------- //CString to char* CString myteststr=_T("1234"); const char *a = (const char *)myte…
itoa 功  能:把一整数转换为字符串 函  数:char *itoa(int value, char *string, int radix); 解  释:itoa 是英文integer to array(将 int 整型数转化为一个字符串,并将值保存在数组 string 中)的缩写. 参  数:value: 待转化的整数.          radix: 是基数的意思,即先将value转化为radix进制的数,范围介于2-36,比如10表示10进制,16表示16进制.          *s…