C++名称空间,流概念----C++基础(第一期)

本文介绍了C++编程的基础概念,包括主函数的默认行为,C++函数与.h文件的区别,命名空间的使用及其在大型项目中的作用,以及流的概念、常用输入输出函数如cout和cin,数据类型、常量和C++11中的auto声明等。
摘要由CSDN通过智能技术生成

C++标准主函数:

int  main()
{
    return 0;  //编译器到达main()函数末尾,默认就是
         //这一句,因此这一句也可以不写(仅在main()中有效)
}   

纯C++函数是没有.h的后缀名的(与C对比),如iostream —输入、输出流 (使用cin 输入和cout 输出 时,必须包含头文件 iostream)

名称空间:

#include<iostream>

using namespace xxx(iostream命名空间为std)

C++标准库所有的标识符都是在一个命名空间中定义的,相当于包,这样可以防止在大型工程中因重命名而造成的错误。

上面便在程序开头就声明了命名空间,因而后面程序可以直接调用该命名空间里的函数名,如cin,cout…… 下面两种写法也是允许的:

#include<iostream>

using std::cout;   //写法一 只声明所需要的函数名
int  main()
{
    std::cout<< xxx <<std::endl;   
    //写法二 程序开头未声明命名空间
    return 0;  
}   

流的概念以及部分常用函数

流的概念

数据之间的传输叫作流。 如iostream 叫输入输出流, cout是输出流对象,是一个类。同理,cin是输入流对象。

输入输出常用函数

cout<< xxx <<endl;
1. // "<<"  插入运输符,将后面xxx的内容插入
  //输出流(即将内容显示到屏幕),同时 "<<"还可以作为
  //左移运算符---运输符的重载(同一个东西,不同场景,
  //不同含义和用法)
  
2.  // "endl" (end line缩写):相当于C语言中的"\n"

在C++中,通常来说回车键,与空格和制表符(tab键)作用相同。

  1. cout << xxx 会根据"<<"后面的数据类型来自动调整输出的内容。

  2. cin >> xxx 从缓冲区中提取相应的内容,会丢弃结束符(回车,制表符,空格)-------遇到结束符便停止第一次提取,若缓存区开头第一个字符是结束符,cin会忽略它并清除。

  3. a=cin.get();或 cin.get(a); 从缓存区中提取一个字符到变量a中,会丢弃结束符—将结束符留在缓冲区中。后者还可以这样写:cin.get(a).get(b); 可以将后一个字符读入变量b中。

  4. cin.get(a,n); 从缓冲区中只提取前n-1个字符到变量a中,不会丢弃结束符(\n),但会忽略空格。

  5. cin.getline(a,n); 与cin.get(a,n);作用相似,只是当缓冲区中数据个数大于n时会报错,而cin.get(a,n)则不会。cin.getline(a,n)不会丢弃结束符(\n)。

  6. getline(cin, a); 将输入流传入a中,getline(b,a); 将b中内容复制到a中。

  7. memcpy(目标地址,源地址,一次性复制的字节数sizeof()); 将源地址的指定字节内容复制到目标地址上,memcpy可以拷贝任何数据类型的对象,且与strcpy()相比memcpy()不会因遇见"\0"而结束,而是会拷贝完n个字节。

  8. cin.ignore(n); 忽略缓冲区前n个字符。

  9. int a; string w; w=to_string(a); //将a转换为字符串

C++数据类型相关

C++中数据类型有 int,char,short(16位),long(32位), long long(64位),这五种类型又有有符号(unsigned)和无符号(signed)两种,共十种类型。

变量相关

  • C++相比于C语言,新增初始化语法:

    数据类型 变量名(变量初始值); 如:int value(10);

  • C++11里面更可以将大括号用于单值变量:

    数据类型 变量名{变量初始值} 如: int a{7};

    如果大括号里为空,则系统默认为变量赋0值。

  • C++的整形变量当取值超过其范围时,编译器会自动在另一端继续取值。

  • cout<<hex; 接下来会将cout显示的整数变为十六进制(八进制为oct,十进制为dec)。

常量相关

  • const 限定符(限定了声明的含义):
    const int a=10;----a是一个符号常量,值为10。

    与#include a 10 作用相同,但比其更好,

    1.明确了常量类型。2.可以限定常量作用域。

  • 浮点常量:在数字后加f或F,若是long,double 类型后面加L。
    如:8.2L,8.1e+3L—(8.1x10^3) ;这些数在默认情况下都是 double类型。

  • C++中强制转换两种写法:1.(int)a。2.a(int)。

  • C++11中的auto(自动)声明:
    auto n=100, m=2.3; 如果使用关键字auto,而不指定类型,编 译器会把变量类型设置成与初始值相同。

  • 14
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

freejackman

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值