中国农业建设网站开发公司外包
- 作者: 五速梦信息网
- 时间: 2026年04月20日 03:48
当前位置: 首页 > news >正文
中国农业建设网站,开发公司外包,作文网站网址,佛山小学网站建设C 语言是在优化 C 语言的基础上为支持面向对象的程序设计而研制的一个通用目的的程序设计语言。在后来的持续研究中#xff0c;C 增加了许多新概念#xff0c;例如虚函数、重载、继承、标准模板库、异常处理、命名空间等。 C 语言的特点主要表现在两个方面#xff1a;全面兼… C 语言是在优化 C 语言的基础上为支持面向对象的程序设计而研制的一个通用目的的程序设计语言。在后来的持续研究中C 增加了许多新概念例如虚函数、重载、继承、标准模板库、异常处理、命名空间等。 C 语言的特点主要表现在两个方面全面兼容 C 语言 和 支持面向对象的方法。
1 基础知识
1.1 扩展名 C语言源文件的后缀非常统一在不同的编译器下都是.c。C 源文件的后缀则有些混乱不同的编译器支持不同的后缀下表是一个简单的汇总
编译器Microsoft Visual CGCCGNU CBorland CUNIX后缀cpp、cxx、cccpp、cxx、cc、c、CcppC、cc、cxx 通常使用 .cpp 作为 C 源文件的后缀这样更加通用和规范。
1.2 注释符
单行注释//注释内容
int x; // 定义 x 的数据类型为 int块注释/* 注释内容 /
if(xy)return x;
else return y;
/ 如果 x 大于 y 则返回 x
否则返回 y /注释符可以放置在代码的任何位置且不参与代码运行。
1.3 头文件声明 最简单的C程序往往是下面这样声明头文件
//C中常用写法
#include iostream //引用C标准头文件库
using namespace std; //使用名字空间#include 为C/C中包含头文件命令用于将指定头文件嵌入源文件中。#include一般用在 C、C 等语系的编译环境编程软件的编程代码中也即告诉你在这个地方要插入一堆代码而这堆代码在另一个文件里。 iostream是 C 的一个头文件库在安装 C 环境的时候就已安装于电脑中只需要用 include 将该它包含进来就可以使用它的代码。 C已把标准C库的组件放在一个名位 std 的 namespace 里面中如果include头文件的时候加上.h默认有using namespace否则需要自己加上 using namespace std。 因此若没有第二行语句cout 就会没有定义除非使用 cout 时写成 std::cout即指明其来自空间std 。 按照 C 语言规则声明则是下面这样
#include iostream. h //引用头文件不需要声明名字空间不加.h的是现在 C 中规定的标准目的在于使C代码用于移植和混合嵌入时不受扩展名 .h 的限制避免因为.h而造成的额外的处理和修改。而加.h是c语言的用法但是在c中也支持这种用法主要是为了向下兼容c 的内容平时尽量不用这种方法 。 在C程序中头文件不再以“.h”结尾一些在C语言中常用的头文件在C中的名字变为去掉“.h”并在开头增加字符 c 。例如
#include cstdio //标准化后经过改造的C标准库所有的组件都放在了std中
#include cstring //C标准库下基于char 的字符处理函数库
#include string //增加了C类的字符处理函数库
#include cstdlib
#include bits/stdc.h //号称万能库在大部分情况下使用这一行就可以省去其他库的生声明stdio.h是以往 C 和 C 的头文件是标准CSTL函数库中的头文件且 cstdio 中的函数都定义在一个名称空间 std 里面如果要调用这个名字空间的函数须加std::或者在文件中声明 using namespace std。 string.h 是标准C提供的字符处理函数集。面向char *.。 是C为兼容C提供的 string.h 的C版本里面的主要改进有将一些隐藏变量编入命名空间修正一些C编译器认为Bug的代码。 stdlib.h可以提供一些函数与符号常量是C为兼容C提供的版本。
1.4 命名空间 命名空间里面包含了逻辑结构上相互关联的一组类、函数、模板等。命名空间像是一个容器把某些在逻辑结构上相关的 “对象” 放在一起并与外界区分。特别的命名空间里的变量名或类名可以和命名空间外的变量名或类名重名。 使用命名空间的时候我们可以用 花括号 把声明块括起来再以关键字 namespace 开头并命名其基本格式如下
namespace 命名空间的名字
{声明块
}
其中声明块中可以包含变量、类、函数等。例如
cpp
namespace S
{int x;void FunA(){…}
}在命名空间外使用命名空间内的成员命名空间的名字加上作用域运算符 ::。 参考上例 namespace S若访问 x可写成 S::x访问 FunA() 则为 S::FunA()。 命名空间的嵌套 具有分层屏蔽的作用。例如
namespace S1
{namespace S2{int x;void FunA(){…}}
}若要访问 x则可写为 S1::S2::x同理访问 FunA() 则可写为 S1::S2::FunA()。 using 声明若命名空间内的某个成员使用了 using 声明那么这个成员在程序的后续使用中可直接使用成员名无需添加限定修饰名。使用 using 声明以关键字 using 开头后跟命名空间内的成员名。参考上例嵌套的命名空间 namespace S2 中 int x 的 using 声明为using S1::S2::x; 注意 using namespace 后不能加类名或变量名。同上若 namespace S2 中 int x 的 using 声明写为 using namespace S1::S2::x 便是错误的。 using 指示符可以一次性地使命名空间内的全体成员被直接使用。using 指示符的使用 以关键字 using namespace 开头后跟命名空间名字。特别的std 命名空间声明和定义了标准 C 库中的所有组件使用 using namespace std; 则可使用标准 C 库中的所有成员。
1.5 输入与输出 C 标准 I/O 库包含 iostream、fstream 和 sstringstream。iostream、fstream 比较常用一般操作于输入和输出相较于前两者来说 sstringstream 的出现频率就低了许多一般操作于数据的格式化。为了能更好的理解 C 语言的标准 I/O 库我们参考 cplusplus 官网 的相关内容整理注释了一份关于输入输出流类继承体系的关系图 1. 标准输出流对象 cout 预定义的插入符 “ ” 作用在流类对象 cout 上可实现最基本的屏幕输出其格式为
cout 表达式1 表达式2…;在输出语句中若串联多个插入符则可输出多个数据项。例如
cout a b c;则依次输出 a,b,c 三个数据项的值。 若插入符后面是复杂的表达式则系统自动计算其表达式的值并传给插入符。例如
cout ab ab;依次输出字符串 “ ab ” 以及 ab 的计算结果。
- 标准输入流对象 cin 预定义的提取符 “ ” 作用在流类对象 cin 上可实现对键盘输入的提取操作其格式为 cin 表达式1 表达式2…其中表达式通常用于存放输入值的变量。例如 int a,b; cin a b;即编译执行后输入 a 和 b 的值a 和 b 之间使用空格分隔。如输入1 2则给 a 赋值为 1b 赋值为 2。
- 简单的 I/O 格式控制 一般情况下使用 cin 和 cout 进行数据的输入和输出时会自动按照默认的格式进行处理。如若需要设定特殊的格式可利用 C I/O 流类库提供的操纵符进行调整。这些操纵符可直接嵌入到输入输出语句中实现格式控制。常用的 I/O 流类库操纵符请阅读C 基本的输入输出 1.6 编译和运行C程序 C/C 代码生成可执行文件的过程 我们常见的编译器有两个 gcc 编译器g 编译器 gcc和g都是GNU(组织)的编译器。 程序 g 是将 gcc 默认语言设为 C 的一个特殊的版本链接时它自动使用 C 标准库而不用 C 标准库。通过遵循源码的命名规范并指定对应库的名字用 gcc 来编译链接 C 程序是可行的如下例所示 \( gcc main.cpp -lstdc -o main新建一个helloworld.cpp文件最简单的编译方式 \) g helloworld.cpp由于命令行中未指定可执行程序的文件名编译器采用默认的 a.out。程序可以这样来运行 \( ./a.out Hello, world!通常我们使用 -o 选项指定可执行程序的文件名以下实例生成一个 helloworld 的可执行文件 \) g helloworld.cpp -o helloworld执行 helloworld: \( ./helloworld Hello, world!如果是多个 C 代码文件如 runoob1.cpp、runoob2.cpp编译命令如下 \) g runoob1.cpp runoob2.cpp -o runoob生成一个 runoob 可执行文件。 g 有些系统默认是使用 C98我们可以指定使用 C11 来编译 main.cpp 文件 g -g -Wall -stdc11 main.cppg 常用命令选项请阅读g 常用命令选项 gcc和g编译器的区别 g会把.c和.cpp的文件都当作是C的源程序进行编译。 gcc会把.c的程序当作是C的源程序进行编译.cpp 的程序当作是C的源程序进行编译 参考 C语言https://www.lanqiao.cn/courses/2752/learning/?id47676compatibilityfalse从C到Chttp://c.biancheng.net/view/2191.htmlC基础https://www.runoob.com/cplusplus/cpp-environment-setup.html头文件声明https://blog.csdn.net/weixin_39737764/article/details/gcc编译https://blog.csdn.net/weixin_41010198/article/details/117523288
- 上一篇: 中国农村建设网站首页个人网站备案麻烦
- 下一篇: 中国培训网是国家公认的吗商城网站怎么做seo
相关文章
-
中国农村建设网站首页个人网站备案麻烦
中国农村建设网站首页个人网站备案麻烦
- 技术栈
- 2026年04月20日
-
中国免费网站服务器2020类模板模板下载网站有哪些内容
中国免费网站服务器2020类模板模板下载网站有哪些内容
- 技术栈
- 2026年04月20日
-
中国免费建设网站网址网站使用说明书模板
中国免费建设网站网址网站使用说明书模板
- 技术栈
- 2026年04月20日
-
中国培训网是国家公认的吗商城网站怎么做seo
- 技术栈
- 2026年04月20日
-
中国品牌网站设计亦庄公司做网站
中国品牌网站设计亦庄公司做网站
- 技术栈
- 2026年04月20日
-
中国企业网站建设外包服务市场自己怎么做软件
中国企业网站建设外包服务市场自己怎么做软件
- 技术栈
- 2026年04月20日
