zoukankan      html  css  js  c++  java
  • c/c++概述

    c/c++的学习分为两个部分

    一、语言标准

    语言标准定义了功能特性和标准库两部分。

    功能特性由编译器负责具体实现,比如linux下gcc,windows下Visual Studio

    标准库实现依赖于具体平台,比如linux下c标准库是glibc,windows下的MSVCRT.DLL。

    c/c++是有国际标准化组织ISO制定标准,网址为:https://www.iso.org

    c11标准参考:https://www.iso.org/standard/57853.html

    c++2017参考:https://www.iso.org/standard/68564.html

    以上是需要收费才能下载,我的百度网盘中可下载:https://pan.baidu.com/s/1Dc6lyRPryC9ShbPsZ1U5uQ,提取码:c8kw

    其他可以免费查看的网站:

    各种语言或软件API文档:https://tool.oschina.net/apidocs

    c/c++语言参考:https://zh.cppreference.com

    除了参考语言标准,也可对照具体实现进行学习

    glibc官方文档:https://www.gnu.org/software/libc/manual/html_node/index.html

    二、运行环境

    c/c++程序生成的可执行程序,由操作系统加载运行。因此这部分的学习主要学会使用操作系统相关API,比如文件操作,进程线程相关,网络通信等。

    应用程序可通过系统调用与操作系统进行交互。系统调用需要操作寄存器等,所以glibc封装了这部分操作,提供了简单的c语言接口

    linux下系统调用在内核代码中sys_call_table定义。

    windows下有kernel32.dll、user32.dll、gdi32.dll实现了系统API。

    总结:

    学习c/c++除了学习基本语法,标准库和系统API的学习将是重点。

    linux系统调用列表官方列表:http://man7.org/linux/man-pages/dir_section_2.html

    https://www.ibm.com/developerworks/cn/linux/kernel/syscall/part1/appendix.html

    部分内容参考自:https://www.cnblogs.com/findumars/p/9000371.html

  • 相关阅读:
    解决网页元素无法定位的几种方法
    转载:pycharm最新版新建工程没导入本地包问题:module 'selenium.webdriver' has no attribute 'Firefox'
    关于list的漏删
    春风十里不如你
    记我兵荒马乱的一周(0808-0812)--用户反馈及修改点验证
    vue定时器
    业务系统多机房多活实现思路
    分布式开发之:id生成器
    关于部署系统的一些思考
    web系统认证与鉴权中的一些问题
  • 原文地址:https://www.cnblogs.com/zhaiyunyun/p/12012234.html
Copyright © 2011-2022 走看看