1/ int 转换成 string 格式
#include<sstream>
std::stringstream ss;
str::string temp;
int n;
ss<<n;
ss>>temp;
//再次使用时 需要 ss.clear(); 或者重新定义
方法1:
string转换成int
atoi(str.c_str()) 函数
string s; int re;
re= atoi(s.c_str());
方法2 :
int b= stoi(string a);
3.c++中指针数组和数组指针作为函数参数时,该如何传递
#include<iostream> #include<cstdio> using namespace std; void FuncT(int iNum, char *asIP[]) { for (int i = 0; i < iNum; ++i) { printf("%s ", asIP[i]); } } int main() { char asIP[20][16]; cout << asIP << " " << asIP[0] << endl; char *p[20] ; p[0] = asIP[0]; p[1] = asIP[1]; strcpy_s(asIP[0], "172.2.2.1"); strcpy_s(asIP[1], "172.23.3.2"); FuncT(2, p); system("pause"); return 0; }
//形参和实参的匹配形式 // 实参 形参 **p **p p[][] (*p)[] *p[] **p (*p)[] *p
#include <mem.h>
void* memset(void* s, int c, size_t n)
{
unsigned char* p = (unsigned char*) s;
while (n > 0) {
*p++ = (unsigned char) c;
--n;
}
return s;
}
memset()的函数, 它可以一字节一字节地把整个数组设置为一个指定的值。
memset()函数在mem.h头文件中声明,它把数组的起始地址作为其第一个参数,
第二个参数是设置数组每个字节的值,第三个参数是数组的长度(字节数,不是元素个数)。
4/ C++中禁止 拷贝构造函数 和 赋值构造函数
设为private ,但是这种方法 它的 friend class 和 friend 函数 都可以访问拷贝构造
c++11 标准中可以通过delete操作禁掉 他们
T(T&temp)=delete; // 再次调用拷贝构造函数 会报错
T& operator=(T&temp)=delete;
5/ 随机函数 rand()/ srand()
rand stdilb.h 中
rand() 产生的是伪随机数,每次产生的是相同的值
如果想要产生不同的随机数用srand函数
srand((unsigned)time(0));