栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++学习Day01

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++学习Day01

C++学习
  • 前言
    • Day 01
      • 万古不变之HelloWorld
      • 解析HelloWorld
      • 第一个函数
      • linker
    • 结语

前言

本人先从事java开发方面的工作,已有大半年的时间,因公司业务方向的变更需要做出一些选择。我选择了我更感兴趣的方面,但是我做出了选择我不会后悔。本人也不知道自己大概会有多久的学习热情,所以望大家监督。

Day 01 万古不变之HelloWorld

正常的代码为:

#include 

int main(){
	std::cout << "hello world!"  << std::endl;
	std::cin.get();
}

但是 我一开始就写成了

#include 

int main(){
	std::count << "hello world!"  << std::endl;
	std::cin.get();
}

我左看又看,愣是看了半天才看出来。因为count 和 cout 一个单词之间的差异。cout 是iostream的一个对象,是一个标准的输出流。

解析HelloWorld
#include 

这个是一个预处理文件,如果你学过java,你可以把他理解为你导入的包。

std::cout

这是一个函数/方法: cout的声明。它能使我们可以打印东西到控制台。main函数是所有程序进入的起点。你可以不写任何返回值,如果程序运行正确就会返回 0 来结束程序。

<<

这个看起来像是左移的符号在c++中表示重载符号。可以把它想象成一个函数。所有也可以写成这样

int main(){
	std::cout.print("Hello World").print(std::endl);
	std::cin.get();
}

把 “Hello World” 作为一个参数传入。

std::endl;

这个我们传入 endl 表示告诉程序结束本行,进入下一行。

cin.get()

这个函数是等待我们输入回车,然后才会接着执行到下一行代码。

第一个函数

如果不想用写好的输出,想用自己封装的一个,那就重新建一个cpp

#include 

void Log(const char* message) {
	std::cout << message << std::endl;
}

这个为什么一定要写 **#include < iostream > ** 因为你用到了输出流。
如果线稿在main函数使用它。那么这就扯到了声明和定义。声明就是告诉编译器你这个东西一定存在。定义则表示这个函数到底是什么。
那么函数的声明在 main 方法中该是什么样的呢?

#include 

void Log(const char* message);

int main(){
	Log("Hello World");
	std::cin.get();
}

看这个是不是有点类似java的接口。

linker

linker是用来干什么的?linker就是当你有多个cpp文件时,编译后他会把你声明的定义和main函数里的调用关系联系起来, ** 每个cpp文件编译后会生产一个.obj的文件 ** ,linker会把这些 .obj 文件组成一个 .exe 文件,这个.exe文件包含了main方法的定义和你声明函数的定义;如果linker找不到你的定义会报 linker error 。

结语

今天就想学这么多,溜溜球。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/353145.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号