`
ackerman
  • 浏览: 75059 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

C语言基础(三)_指针

阅读更多

1.指针变量的初始化

int a,*pa;
pa=&a;
或者
int a,*pa=&a;

应注意,后者初始化中的“*pa=&a”不是一个运算表达式,而是一个说明语句。在这里是将变量a的地址值付给指针变量pa,而不是*pa。

2.指针型函数和指向函数的指针

(1)指针型函数:函数的返回值是指针类型。
(2)简称函数指针,其内容是函数的入口地址。定义如下:
    数据类型 (*函数指针名)();
函数指针的主要作用是作为参数在函数间传递函数。

3.指针数组和二维数组的行指针

(1)指针数组

int *pa[2];

指针数组常用来处理多维数组。
(2)二维数组行指针

int a[3][4];
int (*pa)[4];
pa=a;

它表示pa是一个指针变量,它指向包含4个元素的一维数组。*(pa+i)=a[i]表示的是一维数组a[i]0号元素的首地址(二维数组中并不存在a[i]元素)。而*(*(pa+i)+j)表示的是i行j列的元素的值。

4.main函数的参数

main(int argc,char *argv[])

main函数的参数是从操作系统的命令行获得的。第一参数表示的是参数的个数,第二个参数为字符串指针数组,其各元素是命令行中个字符串的首地址。下面的示例打印输入的参数:

#include<stdio.h>

main(int argc,char *argv[])
{
  while(argc-->1) printf("%s\n",*++argv); 
} 

 5.指针示例

#include<stdio.h>

int add(int x,int y)
{
	return x+y;
}
void pfunc(int x,int y,int (*pf)(int x,int y))
{
	printf("函数指针返回结果:%d\n",(*pf)(x,y));
}

void main()
{
	/*指针数组示例*/
	int a[2][3],*pa[2];
	/*pa[0]=a[0];
	pa[1]=a[1];*/

	/*二维数组行指针*/
	int b[3][4];
	int (*pb)[4];
	/*pb=b;*/

	/*二级指针示例*/
	char *pstr[]={"one","two","three","four","five"};
	char **p;
	p=pstr;
	printf("二级指针返回结果:%s\n",*(p+1));getch();

	/*函数指针示例*/
	pfunc(3,5,add);

}
 
分享到:
评论

相关推荐

    c语言相关书籍_C语言_资料书籍_指针_

    郝斌老师是国内知名的编程教育专家,他的教学大纲通常涵盖了C语言的基础语法、控制结构、函数、数组、指针等关键主题。通过这份大纲,学习者可以系统地了解C语言的学习路径,同时了解每个主题的重点和难点,为后续...

    C语言课件_observe7pk_c语言_C语言_书_C语言课件

    6. 数组与指针:这是C语言的核心部分,讲解数组的声明、初始化和操作,以及指针的使用,包括指针与数组的关系。 7. 结构体与联合:介绍复合数据类型,如何定义和使用结构体与联合。 8. 文件操作:教授如何在C语言中...

    指针源代码_C语言_includingtir_

    以上就是C语言中关于指针的一些基础知识点,这些知识在`CalcRadius.c`和`指针源代码`中可能会有所体现,具体实现可能涉及计算圆的半径、处理数据结构或其他复杂的操作。通过实践这些代码,初学者可以更好地理解和...

    C语言习题资料_C语言习题资料_experience95y_

    本资源“C语言习题资料_experience95y_”是一份专为C语言初学者设计的习题集,旨在帮助学习者巩固基础知识,提升编程技能。 这份习题资料涵盖了C语言的基础到进阶知识点,包括但不限于以下内容: 1. **基本语法**...

    C语言学习例子_C语言_oceanqnm_

    本资源"oceanqnm"提供了几个基础的C语言程序,旨在帮助初学者掌握C语言的基本概念和语法。 1. **指针**:在C语言中,指针是内存地址的别名,它存储了变量在内存中的位置。在"比较大小(指针).c"文件中,你可能会...

    C语言试题_C语言_C语言选择题_考试_

    一、C语言基础 C语言的基础包括变量、数据类型、运算符、流程控制语句等。变量是存储数据的容器,数据类型则定义了变量可以存储的数据种类,如整型(int)、浮点型(float)、字符型(char)等。运算符用于执行算术...

    100道经典的C语言编程题及解答.rar_C语言100题_c语言新手刷题_c语言编程刷题_see27x_初学者c语言100题

    这些题目覆盖了C语言的基础到进阶知识点,包括但不限于变量与数据类型、运算符、控制结构(如if-else、switch-case、for、while循环)、函数的使用、数组和指针操作、字符串处理、结构体与联合体、内存管理以及预...

    C程序员语言面试100题.rar_C语言100题_C语言笔试面试_C语言面试题_程序员笔试题_阿里

    一、C语言基础 1. C语言的数据类型:包括整型(int)、浮点型(float/double)、字符型(char)等,以及它们的存储大小和取值范围。 2. 变量的声明与初始化:理解变量的作用域、生命周期和初始化的重要性。 3. ...

    课程思政-C语言程序设计-指针基础

    课程思政-C语言程序设计-指针基础

    c语言入门例程_C语言_入门_

    在编程世界中,C语言是一门基础且至关重要的语言,被广泛用于系统开发、软件工程、游戏编程等领域。"C语言入门例程"项目旨在帮助初学者通过实践掌握C语言的基本概念和语法结构。这个项目将C语言课本中的经典例题进行...

    C语言经典程序100题(完整版).zip_C语言刷题程序_C语言经典100题_blankete3l_c语言编程刷题_free94

    这个压缩包包含了一个名为"C语言经典程序100题(完整版).doc"的文档,里面详细列出了100个经典的C语言编程题目,涵盖了C语言的基础知识、控制结构、函数、数组、指针、结构体等各个核心部分。 1. **基础语法**:这些...

    C语言编程宝典之一.rar_C语言_C语言编程宝典_c语言编程_visual c

    1. **C语言基础**:涵盖C语言的基本语法,包括变量声明、数据类型(如整型、浮点型、字符型等)、运算符、流程控制(如if-else、switch-case、循环结构for、while、do-while)以及函数的定义和调用。 2. **指针**:...

    C语言深度剖析_Vc_

    书中不仅涵盖了C语言的基础知识,还深入探讨了高级特性和实战技巧,以确保读者能够理解和掌握C语言的内在机制。 首先,C语言作为一门基础且强大的编程语言,其语法简洁而高效,是理解计算机底层工作原理的重要工具...

    C_language_view_test.rar_C 面试题_C语言面试题_c语言 项目 报告_面试_面试题

    C语言是计算机编程的基础,广泛应用于系统开发、嵌入式编程、软件开发等多个领域。面试时,对于C语言的掌握程度往往成为评估程序员能力的重要标准。以下是对标题、描述及标签所涉及知识点的详细说明: 1. **基本...

    C语言经典例题100.rar_C语言:经典例题_c语言100例题_c语言例子_c语言例题_代码实现

    这些例题覆盖了C语言的基础语法、数据类型、控制结构、函数、指针、数组、结构体等核心概念,是提升编程能力的绝佳途径。 1. **基础语法**:C语言的基础包括变量声明、常量定义、赋值操作、输入输出等。例题可能会...

    C语言程序设计_第三版_-谭浩强

    此外,还详细讨论了指针这一C语言的核心特性,包括指针的声明、赋值、运算以及通过指针操作数组和结构体。 内存管理是C语言中的重要主题,书中通过实例解释了动态内存分配和释放,帮助读者理解堆与栈的区别。文件...

    谭浩强_C语言程序设计_教程全书_Word版

    这本书全面覆盖了C语言的基础知识和高级特性,旨在帮助读者掌握编程思维,建立坚实的编程基础。 C语言是一种强大的、通用的编程语言,广泛应用于系统编程、嵌入式开发、软件工程等多个领域。谭浩强的教程全书首先从...

    C语言入门学习_上机100题

    一、C语言基础概念 C语言的基础包括变量、数据类型、运算符和表达式。在这些题目中,初学者会接触到基本的变量声明、赋值操作,以及整型、浮点型、字符型等各种数据类型的使用。此外,还会涵盖算术、比较和逻辑...

    C语言期中考试模拟题.zip_C语言 期末_c语言 试题_c语言期中考试_模拟考试

    C语言是一种基础且重要的编程语言,它以其简洁、高效和灵活的特点被广泛应用于软件开发、系统编程、嵌入式系统等多个领域。对于学习C语言的人来说,掌握其基本语法、数据类型、控制结构、函数以及内存管理是至关重要...

    经典编程900例(C语言)_C语言编程实例_below7co_源码

    这些实例旨在帮助初学者和进阶者巩固C语言的基础知识,提高编程技巧,并通过实践加深对语言特性的理解。下面,我们将深入探讨其中可能涵盖的关键知识点。 1. **基本语法与数据类型**:C语言的基础,包括变量声明、...

Global site tag (gtag.js) - Google Analytics