跳转至

Basic

数组

int a[3] = {0, 1, 2};
// 局部数组
#include <string>
int* P = new int[n];
memset(P, 0, sizeof(int)*n); // memset第三个参数单位是byte
// 局部数组,全部初始化为0
int* a = new int[n]();
// 二维数组
bool** match = new bool* [m+1];
for (int i = 0; i < m + 1; i ++) match[i] = new bool[n+1];
for (int i = 1; i < m + 1; i ++) match[i][0] = 0;

字符串操作

声明

string s(length, char); // length位char的字符串
s.size(); // length
sort(s.begin(), s.end()); // sort string

查找

// 从index开始查找第一个与str中的字符都不匹配的字符,如没找到返回string::npos(-1)
size_type find_first_not_of( const basic_string &str, size_type index = 0 );
size_type find_first_not_of( const char *str, size_type index = 0 );
// 从index开始查找第一个与str中的字符都不匹配的字符并返回其位置,最多查找num位
size_type find_first_not_of( const char *str, size_type index, size_type num );
// 从index开始查找非ch字符并返回位置,如没找到返回string::npos(-1)
size_type find_first_not_of( char ch, size_type index = 0 );

截取

str.substr(beginPos, length);
str.substr(beginPos); // from beginPos to the end

与整数转换(c++11起)

stoi(string s);
to_string(int i);