c++入门(简单基础)

来源:互联网 发布:偏头痛物理疗法知乎 编辑:程序博客网 时间:2024/05/23 11:59

文件名:hello.cpp

1、字符串的简单操作

2、函数指针数组以及通过函数指针数组的元素来调用函数

 1 // 20170515  2 #include <iostream>  3 #include <vector>  4 #include <string>  5   6 //using namespace std;  //后续可简化不写 std::  7   8 void trb_string()  9 { 10         std::cout<< "****************\n"; 11         std::string str;        //定义字符串 12         str = "Tian"; 13         str += "Renbao";        //字符串后续添加内容 14         int num_size = str.size(); 15         std::cout<< str << "___size:" << num_size <<std::endl; 16  17         std::string str0 ="tian"; 18         std::string str1(str0);         //str1 = str0 19         std::string str2 = "ren"; 20         str1 += str2; 21         str1 = str1 + "bao"; 22         std::cout<< str1 << "___size:" << str1.size() <<std::endl; 23 } 24  25 /*输入多行字符,“quilt”结束,并将打印输出*/ 26 void trb_input() 27 { 28         std::cout<< "****************\n"; 29         std::string str; 30         std::string str1; 31         int num_line = 0; 32         while(getline(std::cin,str1))   //getline()函数 33         { 34                 if(str1 == "quit") 35                 { 36                         break; 37                 } 38                 str += str1; 39                 str += "\n";    //每输入完一行进行保存时加上换行符,实现将多行字符分行输出显示 40                 num_line++; 41         } 42         std::cout<< "total chars:" << str.size() << "\t" << "total lines:" << num_line <<std::endl; 43         std::cout<< str << std::endl; 44 } 45  46 /* 输入多行字符,“quit”结束,并将每行打印输出_每行的最前面显示行号_每行的最后面显示该行的字符数*/ 47 void trb_vector() 48 { 49         std::cout<< "****************\n"; 50         std::string str_temp; 51         std::vector<std::string> vect; 52         while(getline(std::cin,str_temp)) 53         { 54                 if(str_temp == "quit") 55                 { 56                         break; 57                 } 58                 vect.push_back(str_temp);       //push_back()添加内容到末尾 59         } 60  61         int num_char = 0; 62         for(int i = 0; i < vect.size(); i++)    //vector的size()为矢量个数,即有多少行 63         { 64                 std::string s = vect[i]; 65                 num_char += s.size();   //vector中每个矢量的大小相加得到vector总的大小 66         } 67         std::cout<< "total lines: "<< vect.size() << "\t" << "total chars: " << num_char <<std::endl; 68         for(int i = 0; i < vect.size(); i++) 69         { 70                 std::string s = vect[i]; 71                 std::cout<< i << "\t" << s << "\t" << s.size() <<std::endl;     //输出时在每一行的前面加上行号,后面加上该行的字符数 72         } 73 } 74  75 int main(int argc, char *argv[]) 76 { 77         int a = 3; 78         std::cout<<"Hello World!\n";//<<std::endl; 79         std::cout<< (a==0 ? "a=0":"a!=0") <<std::endl;  //三目运算符 80  81         std::cout<< "****************" <<std::endl; 82         std::vector<int> aa;    //定义数组 83         aa.push_back(10);       //数组元素赋值 84         aa.push_back(20);       //push_back()添加内容到末尾 85         std::cout<< "数组aa的第一个元素为:"; 86         std::cout<<  aa[0] <<std::endl;         //下标从0开始 87         std::cout<< "数组aa的元素个数为:" << aa.size() <<std::endl;    //.size() 88  89         std::cout<< "****************" <<std::endl; 90         /*遍历数组并输出*/ 91         for(int i=0; i<aa.size(); i++) 92         { 93                 std::cout<< "数组aa的第" << i << "个元素为" << aa[i] <<std::endl; 94         } 95  96         void (*p_fun[3])();     //定义函数指针数组,是的,一个数组  97  98         p_fun[0] = trb_string;  //将函数名(即指针)赋予给 数组 99         p_fun[1] = trb_input;100         p_fun[2] = trb_vector;101 102         p_fun[0]();     //通过数组元素调用函数103         p_fun[1]();104         p_fun[2]();105 106         return 0;107 }


原创粉丝点击