C++基本语法

//打印输出
std::cout<<"Hello World"<<std::endl;

//宏常量
#define day 7

//修饰变量,表示常量,相当于java的final
const int a=10;

为了避免频繁的写std::

using namespace std;
   //短整型,2字节
    short a1;
    //整型,4字节
    int a2;
    //长整型,win为4字节,linux为4字节(32位),8字节(64位)
    long a3;
    //长长整型,8字节
    long long a4;
    std::cout<< sizeof(a1)<<std::endl;
    std::cout<< sizeof(a2)<<std::endl;
    std::cout<< sizeof(a3)<<std::endl;
    std::cout<< sizeof(a4)<<std::endl;


    //单精度,4字节,7个有效数字
    float f1;
    //双精度,8个字节,15-16位有效数字
    double f2;
    std::cout<< sizeof(f1)<<std::endl;
    std::cout<< sizeof(f2)<<std::endl;

    //科学计数法
    float  f3=3e2;//3*10^2
    float  f4=3e2;//3*0.1^2


如果属性有在堆区开辟的,一定要自己提供拷贝构造函数,防止浅拷贝带来的问题


静态变量

静态变量还需要声明在类外面

class Person  {
public:
    static int i;
    int  get(){
        return i;

    }
};
int Person::i;

继承语法

class Person  {

public:
    void test(){
        std::cout<<"123"<<std::endl;
    }
};


class Man:public Person{

};

文件的读写

在这里插入图片描述

写文件:

int main()  {

    std::ofstream ofs;

    ofs.open("test.txt",std::ios::out);

    ofs<<"在吗"<<std::endl;
    ofs<<"在吗"<<std::endl;
}

读文件:

    ifstream ifs;
    ifs.open("test.txt");
    //如果打开失败则返回
    if(!ifs.is_open()){
        return 0;
    }
    char buffer[1024]={0};
    //将输入流拷贝到buffer中
    while(ifs>>buffer){
        cout<<buffer<<std::endl;
    }
    ifs.close();

第二种方式:

    ifstream ifs;
    ifs.open("test.txt");
    if(!ifs.is_open()){
        return 0;
    }
    char buffer[1024]={0};
    
    //第二种方式
    while(ifs.getline(buffer, sizeof(buffer))){
        cout<<buffer<<std::endl;
    }
    ifs.close();

第三种方式:

    ifstream ifs;
    ifs.open("test.txt");
    if(!ifs.is_open()){
        return 0;
    }
    //第三种方式
    string buf;
    while (getline(ifs,buf)){
        cout<<buf<<std::endl;
    }

    ifs.close();

第四种方法:

    ifstream ifs;
    ifs.open("test.txt");
    if(!ifs.is_open()){
        return 0;
    }
    char c;
    while((c=ifs.get())!=EOF){
        cout<<c<<endl;
    }

二进制的方式进行读写操作

写文件:

    //第二个参数表示,输出流以二进制的方式
    ofstream ofs("person.txt",ios::out|ios::binary);
    //上面方法和下面方法都可以。
//    ofs.open("person.txt",ios::out|ios::binary);

    Person p={"zhangsan",12};

    ofs.write((const char*)&p, sizeof(Person));

    ofs.close();

读文件:

    ifstream ifs;
    ifs.open("person.txt",ios::in|ios::binary);
    if(!ifs.is_open()) {
        return 0;
    }
    //创建对应的bean进行接收
    Person person;
    
    ifs.read((char *)&person, sizeof(Person));
    
    cout<<person.age<<"----"<<person.name<<endl;
    
    ifs.close();
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值