C语言面试题---指针篇(一)

时间: 2023-08-15 admin 互联网

C语言面试题---指针篇(一)

C语言面试题---指针篇(一)

版本声明:本文转载于公众号TeachPlus


指针的使用,一直是c语言面试题中必考的部分,

因为指针本身使用的复杂性与普适性,所以考点非常多,而且也可以与其他知识相互结合,

因此我们将会使用五篇专题的篇幅来介绍指针。分析下面的程序,指出程序中的错误:

# include <stdio.h>
int  main( void)
{
    char a;
    char *str=&a;
    strcpy(str,"hello");
    printf("%s\n",str);
    return 0;
}

本题解析

没有正确为str分配内存空间,将会发生异常。

问题出在将一个字符串复制进一个字符变量指针所指地址。

虽然编译的时候没有报错,但是在运行过程中,因为越界访问了未被分配的内存,而导致段错误。

相关知识点

在处理与指针相关的问题时,首先需要搞明白的就是内存,因为指针操作的就是内存。
第一个,就是内存的分区。这也是经常会被考察的一个考点。

写出内存分为几大区域

对于这个问题,有几种不不同的说法。

有的说内存分为五大分区,有的