用变量a给出下面的定义
    a)一个整型数
    b)一个指向整型数的指针
    c)一个指向指针的指针,它指向的指针是指向一个整型数
    d)一个有10个整型数的数组
    e)一个有10个指针的数组,该指针是指向一个整型的数
    f)一个指向有10个整型数数组的指针
    g)一个指向函数的指针,该函数有一个整型参数并返回一个整型数
    h)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数

答案:
        a) int a;

b) int * a;

c) int ** a;

d) int  a[10];

e) int* a[10];

f) int ( *a )[10];

g) int ( *a )(int);

h) int (* a[10] )(int);

数组指针,函数指针的声明方式相对要复杂一些。这种情况下我们先找到变量名,然后再看哪个符号先和变量名结合,如果是*号说明此变量是一指针变量。如果是[ ]符号则说明此变量是一数组。如f 和g中*号先和a结合说明变量是一指针,而此时括号中再没有其它信息,我们再向右看,f右边是[ ]说明指向的是一个数组,最后我们再看左边说明指向的数组的元素是int类型; 在g中我们向右看是一对括号,表示指向的是一个函数参数为int,最后看左边为返回值类型。 h中我们看到a是一数组,括号中左边还有一个星号,说明数组元素为指针,括号中再没有其它信息,再向右看,(int)说明指向类型为函数,参数为int,最后向左看表示返回值为int。  C/C++语法变化多端。不同情况不同分析。要想熟练掌握,最好的办法,就是多写代码,勤查资料,博览群书。

基于Visual C++2013拆解世界五百强面试题--题1-定义各种类型指针的更多相关文章

  1. 基于Visual C++2013拆解世界五百强面试题--题3-打印螺旋数组

    请用C语言实现 输入N,打印N*N矩阵 比如 N = 3, 打印: 1 2 3 8 9 4 7 6 5 N = 4, 打印 1   2    3   4 12  13   14  5 11  16   ...

  2. 基于Visual C++2013拆解世界五百强面试题--题2-输出和为一个给定整数的所有组合

    请用C语言实现 输出和为一个给定整数的所有组合 启动2012 /* 请用C语言实现 输出和为一个给定整数的所有组合 */ #include <stdio.h> //包含头文件stdio.h ...

  3. 基于Visual C++2013拆解世界五百强面试题--题18-程序结果分析2-终结篇

    第二部分程序结果分析,分析流程还是写入代码注释中 分析下面程序的输出: #include <stdio.h> int main() { char *a = "hello" ...

  4. 基于Visual C++2013拆解世界五百强面试题--题17-程序结果分析1

    分析程序结果,分析过程我们就写在程序注释里面. 写出下列代码的输出内容 #include <stdio.h> int inc(int a) { return (++a); } int mu ...

  5. 基于Visual C++2013拆解世界五百强面试题--题16-进制分析

    清写出下列代码的输出内容 #include <stdio.h> int main() { int a = -1, b = -12, c = -123, d = -1234; printf( ...

  6. 基于Visual C++2013拆解世界五百强面试题--题15-递归相加

    有一分数序列: 1/2 , 1/4 , 1/6 , 1/8 ......,用递归的方法,求此数列20项之和. 可以看出规律:每一项位1/n*2 这个很容易些递归,但是要注意一点,使用浮点数相除保存: ...

  7. 基于Visual C++2013拆解世界五百强面试题--题14-循环删除

    有一个数组a[1000]存放0-1000,要求每隔二个数删除一个数,到末尾时循环到开头继续进行,求最后一个被删掉数的原始下标. 看到题目可以用循环链表保存这些数,然后循环删除,大大减少了一些复杂的边界 ...

  8. 基于Visual C++2013拆解世界五百强面试题--题13-找最大公共子字符串

    编程实现:找出两个字符串中最大公共子字符串,如"abccade"和"dgcadde"的最大子字符串为"cad". 如果不考虑效率的话直接比较 ...

  9. 基于Visual C++2013拆解世界五百强面试题--题12-进制转换

    编程实现,把十进制数(long型)分别以二进制和十六进制形式输出,不能使用printf系列库函数. 转换成二进制,直接循环移位依次取每一位,判断1或0然后将相应字符放入字符串缓冲区中. 对于十六进制, ...

随机推荐

  1. SQlSERVER生成唯一编号

    基数表-用来存储编号前缀和类型 建表如下 CREATE TABLE [dbo].[SerialNo]( [sCode] [varchar](50) NOT NULL, [sName] [varchar ...

  2. Unity5UGUI 官方教程学习笔记(二)Rect Transform

    Rect Transform Posx    Posy   Posz  :  ui相对于父级的位置 Anchors :锚点  定义了与父体之间的位置关系    一个锚点由四个锚组成  四个锚分别代表了 ...

  3. mysql快速翻页查询方法

    SELECT SQL_NO_CACHE *FROM softdb_testWHERE id > (SELECT idFROM softdb_testORDER BY id DESCLIMIT 5 ...

  4. 服务器搭建纪录linux+mysql+nginx+php

    新的项目启动 第一版 首先买了阿里云,选好环境镜像包,一键安装. 第一版php打算不用框架,完全手写,主要的功能点 数据交互和图片传输. 后台搭建好后,使用PHP的Laravel, web端还是选定b ...

  5. [转载]php 处理上百万条的数据库如何提高处理查询速度

    转载自http://www.jb51.net/article/22063.htm ----------------------------------------------------------- ...

  6. codeforces 292E. Copying Data 线段树

    题目链接 给两个长度为n的数组, 两种操作. 第一种, 给出x, y, k, 将a[x, x+k-1]这一段复制到b[y, y+k-1]. 第二种, 给出x, 输出b[x]的值. 线段树区间更新单点查 ...

  7. 一个简单的模板引(han)擎(shu)

    自制一个简单的模板引(han)擎(shu) 原理 说大了 实际上是模板函数 原理呢就是简单的字符串替换 第一版 var data = { username: 'Muhha' } str = '< ...

  8. SSD常见问题的技术分析

    AHCI对性能的影响 AHCI,全称Advanced Host Controller Interface,即高级主机控制器接口,是一种相比老旧的“IDE虚拟模式”更适合新一代SATA存储设备通信的协议 ...

  9. SSD的优势

    谈过SSD的发展历史后,现在我们来讲解下SSD相比传统HDD(机械硬盘)的优势. 相信很多读者只要有听说过SSD,必定都会听到对SSD优点的一个字总结:快! 但这一个字要如何去理解呢?很多人可能还不太 ...

  10. webp 初探

    WebP是Google新推出的影像技术,它可让网页图档有效进行压缩,同时又不影响图片格式兼容与实际清晰度,进而让整体网页下载速度加快. 如果我们能将其应用在现有的图片上,将可以进一步减少图片大小加快页 ...