C++进阶

作者: Alein | 来源:发表于2020-02-26 14:50 被阅读0次

C基础:


  1. 控制每行输出字符数
if(!(i%10)) printf("\n");

  1. 求最大公约数
  while(b!=0)
    {
      t=a%b;
      a=b;
      b=t;
    }

  1. 字符宽度
    printf("%9d",x);

  1. 延时
for(i=0;i<10000;i++);

  1. 指针就是地址;存放地址的变量就是指针变量。
    取地址运算符:&
    取内容运算符:*

  1. 递归阶乘函数
fac(int);
    void main(){
        int m;
        scanf("%d",&m);
        printf("%d!=%d",fac(m));
    }
    int fac(int n){
        int result;
        if(n==1) return 1;
        result = n*fac(n-1)
        return result;
    }
    }

  1. 内存分配/释放函数
    void *malloc(int size)
    void free(void *prt)

    int *prt;
    prt = malloc(4*sizeof(int));
    if(!prt)
        printf("...");
    free(prt);

  1. 结构型变量的定义
  • 在定义结构的同时定义结构型变量
      {
        char addr[80];
        ...
      }a,b;
  • 定义无名称结构型的同时定义该结构型变量
struct
      {
        char addr[80];
        ...
      }a,b;

  1. 用户自定义数据类型名称
    typedef 原数据类型名 新数据类型名
    typedef float REAL;

  1. 编译预处理命令:预处理器
    增强和扩展语言编程的环境
    宏定义#define,#undef
    文件包含#include
    条件编译#if_#else_#endif;
    如#define FALSE 0

  1. FILE结构型定义在stdio.h文件中
typedef struct
{
  int _fd;
  int _cleft;
  int _mode;
  char *nextc;
  char *buff;
}FILE;

#include<stdio.h>
main()
{
  FILE *fp;
  if((fp=fopen("mydata.dat","wb"))==NULL)
  {
    printf("file can't open!\n");
  }
  fclose(fp);
}


  1. 文件读写
    字符文件:fgetc/fputc
    数据块文件fread/fwrite
#include<stdio.h>
main(){
  int i;
  char str[80];
  FILE fp;
  if((fp = fpen("test","w"))==NULL)
  {
      printf("can't open the file");
      exit(1);
  }
 
 gets(str);  //从键盘输入字符串
  for(i=0;str[i];i++)
      fputc(str[i],fp);   //将字符串中的字符逐个写入文件

  ch = fgetc(fp);   //从文件读取字符
  while(ch!=EOF)
   {
       putchar(ch);       //显示
       ch = fgetc(fp);    
    }

  fclose(fp);
  return 0;  
}

C++部分

  1. 基本概念
  • 封装:数据与操作数据的方法结合
  • 数据隐藏:对象属性和方法的对外不可访问性(有限的对外接口,隐藏内部细节)
  • 继承:由一个类获得另一个新类的过程
  • 多态性:类的对象能各以不同的方式响应同一消息(同一接口,多种方式)
  • 类是对象的抽象描述,对象是类的具体实例。
  • 构造函数:创建并初始化对象,对数据成员初始化(无返回值)
  • 析构函数:释放为对象动态分配的内存空间
  • 函数重载:多个同名函数,参数说明不同。
  • 抽象类:含有一个或多个纯虚函数的类(不能建立对象,只能用作基类)

  • 输入/输出有关的类及继承结构
  • 控制器函数:
    --endl:输出换行符并刷新流
    --ends:输出一个空字符
    --setw(int w):设置域宽

  1. 输入/出流对象cin/cout定义在头文件“iostream.h”中。

  1. 内存的动态分配/释放:new/delete(数组动态分配内存时不能进行初始化)

  1. 类的定义
class 类名
{
    private:
        数据成员和成员函数;
    protected:
        数据成员和成员函数;
    public:
        数据成员和成员函数;
}

  1. 文件打开、读写操作
#include<iostream>
#include<fstream.h>
main()
{
    ofstream out("outfile");   //打开文件outfile
    if(!out)
    {
        cout<<“can't open outfile”<<endl;
        return 1;
    }
    float f = 1.2345;
    int i = 10;
    char c = 'a';
    out<<i<< " "<<f<<" "<<c<<endl;    //数据写入
    out<<"This is outfile"<<endl;
    
    char ch;
    while(in.get(ch)) cout<<ch;    //读文件并显示

    ifstream in;
    in.open("infile");      //打开文件infile
    if(!in)
    {
         cout<<"can't open infile"<<endl;
         return 1;
     }
     in.close();     //关闭文件
     out.close();
     return 0;
}






相关文章

网友评论

      本文标题:C++进阶

      本文链接:https://www.haomeiwen.com/subject/npizqhtx.html