C++学习:main函数形参与指针入门
需积分: 10 60 浏览量
更新于2024-07-13
收藏 1.86MB PPT 举报
"这篇C++学习课件主要探讨了main函数的形参形式以及指针和引用的基础概念。"
在C++编程语言中,main函数是程序执行的起点,其形参的形式通常有两种常见的方式:
1. `main(int argc, char *argv[])`:在这个形式中,`argc`是一个整型变量,它表示命令行中参数的总数,包括程序本身的名称。`argv`是一个字符指针数组,每个元素都是一个指向命令行参数字符串的指针。例如,如果命令行输入是"S9_16 CHINA JAPAN AMERICAN",那么`argc`的值为4,`argv`数组将包含"\"S9_16.EXE\"", "CHINA", "JAPAN", "AMERICAN"这四个元素。
2. `main(int argc, char **argv)`:这种形式与前一种基本相同,只是`argv`在这里被声明为一个指向字符指针的指针。实际上,这两种形式在功能上是等价的,因为`char *argv[]`可以被理解为`char **argv`,即`argv`是一个指向指针的指针,这些指针分别指向命令行参数的字符串。
接下来,课件深入讲解了指针和引用的概念:
指针是C++中一个强大的特性,它允许我们直接操作内存地址。当我们定义一个变量,系统会在内存中为它分配空间,并给这个空间分配一个唯一的地址。这个地址就是变量的指针。例如,如果定义了一个整型变量`int i`,它的地址可能是`2000H`。我们可以通过&运算符获取变量的地址,如`&i`。
指针变量是用来存储其他变量地址的变量,其定义通常包含一个星号(*)。例如,`int *i_point`定义了一个整型指针变量`i_point`。我们可以给指针变量赋值,使其指向特定的变量,如`i_point = &i`。此外,我们还可以在定义指针变量时就给它赋值,如`int *i_point = &i`。
使用指针访问变量的值是通过解引用操作完成的,用星号(*)表示。例如,`*i_point = 3`将3赋值给`i`,因为`i_point`指向`i`。需要注意的是,指针变量必须指向相同类型的变量,一个整型指针只能存储整型变量的地址。
引用是C++中的另一个重要概念,它类似于别名,一旦引用被初始化指向一个变量,就不能改变指向其他变量。创建引用时,我们使用`&`符号,但与指针不同,引用本身不占内存空间。例如,`int &ref = i`创建了一个名为`ref`的整型引用,它绑定到`i`,之后`ref`的任何操作都会影响`i`的值。
通过指针和引用,我们可以灵活地在程序中传递和修改变量的值,这对于函数调用、动态内存管理、数据结构以及算法实现等高级编程技巧至关重要。理解并熟练掌握指针和引用是成为C++程序员的关键步骤。
2010-05-20 上传
2021-09-21 上传
2022-10-20 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
条之
- 粉丝: 24
- 资源: 2万+
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析