如何通过C语言面试真题深刻理解指针的复杂而精妙的使用技巧?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1127个文字,预计阅读时间需要5分钟。
目录+前言+试选题一+试选题二+试选题三+试选题四+试选题五+试选题六+试选题七+试选题八+前言+大家好~我又来了,今天给大家带来的是几道针对性的试选题,希望能加强大家对指针知识的理解。
目录
- 前言
- 笔试题一
- 笔试题二
- 笔试题三
- 笔试题四
- 笔试题五
- 笔试题六
- 笔试题七
- 笔试题八
前言
大家好~我又来了,今天给大家带来的是指针的几道笔试题,希望能够加强大家对指针知识的把握,指针就应该这样学!
笔试题一
#include<stdio.h> int main() { int a[5] = { 1 , 2 , 3 , 4 , 5 }; int* ptr = (int*) (&a + 1); printf("%d, %d", *(a + 1), *(ptr - 1)); return 0; }
1.&a取出的是整个数组的地址,&a+1是跳过一个类型为int(* )[5]的数组。
2.a不是单独放在sizeof内,并且数组名a前面没有取地址符号,此时a表示首元素的地址。a+1时跳过一个类型为int的整型,即为第二位元素地址。
3.ptr-1是跳过一个类型为int的整型。
4.( * )(a+1)–>a[1];*(ptr-1)–>ptr[-1]。
本文共计1127个文字,预计阅读时间需要5分钟。
目录+前言+试选题一+试选题二+试选题三+试选题四+试选题五+试选题六+试选题七+试选题八+前言+大家好~我又来了,今天给大家带来的是几道针对性的试选题,希望能加强大家对指针知识的理解。
目录
- 前言
- 笔试题一
- 笔试题二
- 笔试题三
- 笔试题四
- 笔试题五
- 笔试题六
- 笔试题七
- 笔试题八
前言
大家好~我又来了,今天给大家带来的是指针的几道笔试题,希望能够加强大家对指针知识的把握,指针就应该这样学!
笔试题一
#include<stdio.h> int main() { int a[5] = { 1 , 2 , 3 , 4 , 5 }; int* ptr = (int*) (&a + 1); printf("%d, %d", *(a + 1), *(ptr - 1)); return 0; }
1.&a取出的是整个数组的地址,&a+1是跳过一个类型为int(* )[5]的数组。
2.a不是单独放在sizeof内,并且数组名a前面没有取地址符号,此时a表示首元素的地址。a+1时跳过一个类型为int的整型,即为第二位元素地址。
3.ptr-1是跳过一个类型为int的整型。
4.( * )(a+1)–>a[1];*(ptr-1)–>ptr[-1]。

