zoukankan      html  css  js  c++  java
  • C++ Review

     1 #include "iostream"
     2 #include "iomanip"
     3 #include "cstdio"
     4 using namespace std;
     5 int main()
     6 {
     7     ///Type conversion and casts 类型的转换和强转
     8     ///char<short<int<=long<float<double  字节大小 占用存储空间上升
     9     ///C++输入输出
    10     ///Manipulator流操纵符 设定输出流格式
    11     ///setw()宽度setfill()填充字符setprecision()数据域位数fixed()小数点数
    12     int a=123;
    13     cout<<"without setw():"<<a<<endl;
    14     cout<<"with setw():"<<setw(10)<<a<<endl;///过宽 左补空格,过窄原样输出,无后效性
    15     cout<<setw(10)<<setfill('#')<<a<<endl;
    16     cout<<left<<setw(10)<<setfill('#')<<a<<endl;///数左靠齐  默认右靠齐
    17     double b=12300.44678;
    18     cout<<"without setprecision():"<<b<<endl;///默认数据显示的最大位数为6  4四舍五入
    19     cout<<setprecision(7)<<b<<endl;
    20     cout<<fixed<<setprecision(8)<<b<<endl;///设置小数位数  按定点小数非科学计数法 有后效性
    21 
    22     ///单个字符的输入输出
    23     char c;
    24     cin>>c;///默认cin忽略空白字符
    25     ///需要从键盘读入单个字符,不管其空白与否,,使用流操纵符noskipws
    26     //cin>>noskipws>>c;
    27     //cin.get(c);///或者 也读
    28     cout.put(c);
    29 
    30     cout<<"++66"<<endl;
    31     char d;
    32     cin>>d;
    33     cout<<"d"<<d<<endl;
    34     switch(d)
    35     {
    36        case '+': cout<<"++++"<<endl; break;
    37        case '-':cout<<"----"<<endl;break;
    38        case '*':cout<<"****"<<endl;break;
    39        case '/':cout<<"////"<<endl;break;
    40     }
    41 
    42 
    43 }
     1 #include "cstdlib"
     2 #include "cstring"
     3 #include "string"
     4 int main()
     5 {
     6     ///字符串
     7     ///cin同scanf不读入空格(空格当做分隔符结束)
     8     ///cin.getline(数组名,最大读入字符数,结束符);读入一行  同gets()
     9     ///注意回车读入,用cin.get(dummy) /cin.ignore(80,'
    ');/getchar();
    10     ///最多忽略80个字符,忽略遇到回车结束避免
    11 
    12     ///C-style
    13     char c_string[]="sharon";
    14     char c_string1[6];
    15     int len=strlen(c_string);
    16     /*strcpy(name1,name);///将name中字符串复制到name1
    17     strcat(name,name1);
    18     strcmp(name,name1);*/
    19     ///strncpy(str1,str2,n);前n个strncat(str1,str2,n);strncmp(str1,str2,n);
    20     char str1[]="123.3";
    21     int strI=atoi(str1);
    22     int strL=atol(str1);
    23     double strD=atof(str1);
    24     cout<<strI<<endl;
    25     cout<<strD<<endl;
    26 
    27     ///C++-style
    28     ///赋值与初始化
    29     string str11="abcdefg";
    30     string str12(12,'-');
    31     string str13=str12;
    32     str12.assign(3,'.');
    33     str12.assign(str11,1,3);///复制对象,从下标几开始,复制几个
    34     str12.swap(str11);///交换
    35 
    36     ///连接
    37     str11=str12+str13;
    38     str13+="ect";
    39     str13.append(".ect");
    40     str13.append(str11,0,2);///添加对象,从下标为几开始,后延几个
    41 
    42     ///访问
    43     str11[0]=str11[str11.length()-1];
    44     str11.at(0)='*';///与[]不同,.at()进行越界检查
    45     str11.substr(0,4);///从下标0开始,后延几个的字串
    46 
    47     ///替代  擦除  插入
    48     str11.replace(2,3,str12,2,4);///将str11的下标为234(后延3位)的字串
    49     ///替换为str12  下标为2345的字串
    50     str11.replace(1,3,str12);
    51 
    52     str11.erase(9);///擦除下标9之后所有,包括9
    53     str11.erase(4,2);///擦除下标为4,5的字符
    54     str11.erase();///全擦
    55 
    56     if(str11.empty()){
    57         str11.insert(4,str12,1,6);///插到索引位置4前面
    58     }
    59     str11.insert(4,str12);///全插
    60 
    61     int p=str11.find("abc");///从左向右找 存在返回下标,不存在返回-1
    62     str11.rfind("abc");///查找最后一次abc位置
    63     p=str11.find_first_of("abc");///返回第一次出现a,b,or c的下标,否则返回-1
    64     p=str11.find_last_of("abc");///最后一次出现
    65     p=str11.find_first_not_of("abc");
    66     p=str11.find_last_not_of("abc");
    67 
    68     ///输入
    69     getline(cin,str11,'
    ');///遇到回车读入结束
    70     cin>>str11;///不读空格
    71     getline(cin,str11);///读取一行
    72 
    73 
    74     ///C C++字符串相互转换
    75     
    76     string cpp_string="abcdef";
    77     char c_string[6];
    78     ///C++->C
    79     int len =cpp_string.length();
    80     cpp_string.copy(c_string,len);///len表示多少字符//此命令不拷贝''
    81     c_string[len]='';
    82     cpp_string.copy(c_string,2,0);///转换字串
    83     c_string[2]='';
    84     
    85     strcpy(c_string,cpp_string.c_str());///无须考虑大小
    86     
    87     ///C->C++
    88     cpp_string=c_string;
    89 }
  • 相关阅读:
    闲谈武广高铁的开通
    上海枫泾古镇自驾游
    MacBook Pro
    Is it safe?
    转:两位高速交警的救命忠告!
    暴力驾驶新奥迪A6L 2.0T
    有感高速公路改名
    强烈建议上海学习北京实行汽车尾号单双号限行!
    评富士康“十一跳”事件
    喜迎小泰迪叮叮
  • 原文地址:https://www.cnblogs.com/kimsimple/p/6125283.html
Copyright © 2011-2022 走看看