去经历去后悔,去做你想做的,去选你所爱,而不是别人眼里正确的,你的一辈子应该为自己而活。。。

----  网易云热评

一、输出语句

#include <iostream>#include <cstdio> //C++风格int main(void){    //输出语句    std::cout << "hello world!" << std::endl;    printf("hello world!\n");    return 0;}

二、命名空间

#include <iostream>namespace ns1{    void func(void){        std::cout << "ns1的func" << std::endl;    }}namespace ns2{    void func(void){        std::cout << "ns2的func" << std::endl;    }}int main(void){    //func();//名字空间成员不能直接访问    //通过"空间::"访问    ns1::func();    ns2::func();    return 0;}
#include <iostream>//标准名字空间指令,以后省略"std::"using namespace std;namespace ns1{    void func(void){        cout << "ns1的func" << endl;    }}namespace ns2{    void func(void){        cout << "ns2的func" << endl;    }}int main(void){    using namespace ns1;//名字空间指令    func();//ns1的func    using namespace ns2;//名字空间指令    //func();//歧义错误    ns2::func();    return 0;}
#include <iostream>//标准名字空间指令,以后省略"std::"using namespace std;namespace ns1{    void func(void){        cout << "ns1的func" << endl;    }}namespace ns2{    void func(void){        cout << "ns2的func" << endl;    }}int main(void){    using ns1::func;//名字空间声明    func();    //using ns2::func;    //func();//歧义错误    using namespace ns2;//名字空间指令    func();//ns1的func,局部优先    ns2::func();//ns2的func    return 0;}
#include <iostream>using namespace std;namespace ns1{    int num = 100;}namespace ns2{    int num = 200;}//int num = 300;//全局作用域namespace { //无名名字空间    int num = 300;}int main(void){    cout << num << endl;//300    using ns1::num;//名字空间声明    cout << num << endl;//100    cout << ns2::num << endl;//200    cout << ::num << endl;//300    return 0;}

 

三、结构体

#include <iostream>using namespace std;struct Teacher{    //成员变量    char name[20];    int age;    double salary;    //成员函数    void who(void){        cout << "我叫" << name << ",今年" <<            age << "岁,工资是" << salary <<            endl;    }};int main(void){    /*struct*/    Teacher wangjl = {"王建立",48,800.5};    wangjl.who();    return 0;}

 

四、联合体

#include <iostream>#include <cstdio>using namespace std;int main(void){    union{//匿名联合        unsigned int ip1;        unsigned char ip2[4];    };    ip1 = 0x12345678;    for(int i=0;i<4;i++){        printf("%#x ",ip2[i]);        }    printf("\n");    return 0;}

 

五、枚举

#include <iostream>using namespace std;int main(void){    enum Color{RED,YELLOW,BLUE};    cout << RED << ',' << YELLOW << ','        << BLUE << endl;//0 1 2    /*enum*/ Color c;    //c = 2;//C:ok  C++:error    c = BLUE;//C:ok  C++:ok    cout << c << endl;//2    return 0;}

 

六、字符串

#include <iostream>#include <cstring>using namespace std;int main(void){    //定义    string s = "hello";    cout << "s=" << s << endl;    //拷贝    string s2;    s2 = s;    cout << "s2=" << s2 << endl;    //连接    string s3 = " world";    s3 = s + s3;    cout << "s3=" << s3 << endl;    s += " world";//s = s + " world"    cout << "s=" << s << endl;    //比较    if(s == s3){        cout << "比较成立" << endl;    }    else{        cout << "比较不成立" << endl;    }        //获取字符串中某个字符    s[0] = 'H';    s[6] = 'W';    cout << s << endl;//Hello World        //获取字符串长度    cout << s.size() << endl;//11    cout << s.length() << endl;//11    //转换为C风格的字符串    cout << strlen(s.c_str()) << endl;//11    return 0;}
#include <iostream>using namespace std;int main(void){    string str;    cout << "请输入一个字符串:" << endl;    //cin >> str;//碰到空白符结束    getline(cin,str);//碰到"\n"结束    int count = 0;    for(int i=0;i<str.size();i++){        if(str[i]=='A' || str[i]=='a'){            ++count;        }    }    cout << "包含A/a的个数是:" << count << endl;    return 0;}
#include <iostream>using namespace std;int main(void){    string str;    cin >> str;    int len = str.size();    //"abcdef"==>"fedcba"    for(int i=0; i<len/2; i++){        str[i] = str[i] ^ str[len-1-i];        str[len-1-i] = str[i] ^ str[len-1-i];        str[i] = str[i] ^ str[len-1-i];    }    cout << str << endl;    return 0;    //char c1 = 3;    //char c2 = 5;    //c1 = c1 ^ c2;    //c2 = c1 ^ c2;    //c1 = c1 ^ c2;}

 

欢迎关注公众号:顺便编点程

C++基本语法_结构体