C/C++常识

1 C语言中的数据类型

1.1 基本类型

  • 整型(int)
  • 字符型(char)
  • 实型
    • 单精度实型(float)
    • 双精度实型(double)

1.2 构造类型

  • 数组类型
  • 结构类型(struct)
  • 联合类型(union)
  • 枚举类型(enum)

1.3 指针类型

1.4 空类型(无值类型) (void)

2 C/C++不同

2.1 C/C++中新增数据类型

C/C++逻辑类型
C没有提供非00
C_Bool(C99)truefalse
C++booltruefalse

2.2 C++随用随定义

  • C语言 所有变量定义必须位于函数体的最前面
  • C++ 所有变量随用随定义

2.3 I/O不同

  • C语言的I/O方式

    • 输入过程
    输入设备->输入流->scanf->变量
    • 输出过程
    变量->printf->输出流->输出设备
  • C++的I/O方式

    • 输入过程
    输入设备->输入流->cin->变量
    • 输出过程
    变量->cout->输出流->输出设备

3 命名空间

#include <iostream>
#include <stdlib.h>
//using namespace std;
using std::endl;
using std::cout;
using std::cin;
using std::oct;
using std::dec;
using std::hex;
using std::boolalpha;

namespace A
{
    char x = 'A';
    void fun()
    {
        cout << "A company Function" << endl;
    }
    void f2()
    {
        cout << "A company Fuction f2" << endl;
    }
}

namespace B
{
    int x = 2;
    void fun()
    {
        cout << "B company Function" << endl;
    }
    void fun2()
    {
        cout << "B company Function fun2" << endl;
    }
}
using namespace B;


int getMaxOrMin(int* arr, int count, bool isMax)
{
    int temp = arr[0];
    for (int i = 1; i < count; i++)
    {
        if (isMax)
        {
            if (temp < arr[i])
            {
                temp = arr[i];
            }
        } 
        else
        {
            if (temp > arr[i])
            {
                temp = arr[i];
            }
        }
    }

    return temp;
}


/** 
 * 提示用户输入一个整数,8进制,10进制,16进制输出
 * 提示用户输入一个布尔值,以布尔值输出
 */
int main(void)
{

    // lesson 1
    cout << "-------------lesson 1-------------" << endl;
    cout << "请输入一个整数:" << endl;
    int x = 0;
    cin >> x;
    cout << oct << x << endl; // 8进制
    cout << dec << x << endl; // 10进制
    cout << hex << x << endl; // 16进制

    cout << "请输入一个布尔值(0,1):" << endl;
    bool y = false;
    cin >> y;
    cout << boolalpha << y << endl; // bool类型输出

    // lesson 2
    cout << "-------------lesson 2-------------" << endl;
    cout << A::x << endl;
    B::fun();
    B::fun2();
    fun2();            // using namespace B;

    // lesson 3
    cout << "-------------lesson 3-------------" << endl;
    int arr1[4] = {3, 5, 1, 7};
    bool isMax = false;
    cin >> isMax;
    int result = getMaxOrMin(arr1, 4, isMax);
    cout << result << endl;
    //system("pause");
    return 0;
}

参考

  1. C++远征之起航篇
  2. 《C Primer Plus 第五版<中文版>》
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Digital2Slave

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

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

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

打赏作者

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

抵扣说明:

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

余额充值