Chapter 1 Getting Started

Before all

介绍了相关课程内容,诚信问题,课程资源,分数比例等杂项。

The first example

讲述了一个cpp的程序,就是hello world级别的入门程序,不再多介绍。同时给出了compile命令,如下。
• Compile hello.cpp

g++ hello.cpp

• Initialization of msg is a C++11 extension. We need

g++ hello.cpp --std=c++11

• Executable file can be generated as a.out. Change the
output filename by -o option

g++ hello.cpp --std=c++11 -o hello

• Execute

./hello

Different programming languages

介绍了下历史,从略,想看可以找个纪录片看看

Pasted image 20240923173702.png
-c是只compile,但是不link,。

Different errors

这里面有三种错误,编译错误,链接错误,runtime错误
Pasted image 20240923173835.png

Pasted image 20240923173849.png

Pasted image 20240923173859.png

Preprocessor and macros

Lab1 C(完全完成)#What is a macro?
Pasted image 20240923174433.png

Pasted image 20240923174409.png

Pasted image 20240923174543.png

Simple input and output

C++风格
Pasted image 20240923174623.png
C风格
Pasted image 20240923174701.png
Pasted image 20240923174708.png

Command line arguments

Pasted image 20240923175619.png

程序的名称本身也是命令行参数的第一个参数

具体来说,程序执行时,命令行中的第一个参数是程序的路径或名称,存储在 argv[0] 中。这个参数可以是相对路径、绝对路径,或者只包含程序名称,具体取决于如何执行该程序。

关键点

所以,程序名称确实会被当作命令行参数传递,并且是 argv 数组的第一个元素。