在堆内存中存放十个字符串并输出 堆栈溢出时退出程序

Posted liugangjiayou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在堆内存中存放十个字符串并输出 堆栈溢出时退出程序相关的知识,希望对你有一定的参考价值。

 1 # include <stdio.h>
 2 # include <stdlib.h>
 3 
 4 # define NUM 10
 5 
 6 int main()
 7 
 8     char *str[NUM];  /* 定义一个字符性的指针数组 */
 9     int t;
10 
11     /* 为数组中的每个指针分配内存 */
12     for (t = 0; t<NUM; t++)
13     
14         if ((str[t] = (char *)malloc(128)) == NULL)
15         
16             printf("Allocation Error.\n");
17             exit(1);
18         
19         /* 在分配的内存中存放字符串 */
20         printf("Enter string %d: ", t);
21         gets(str[t]);
22         //puts(str[t]);
23     
24 
25     /* 释放内存 */
26     for (t = 0; t<NUM; t++)
27         free(str[t]);
28 
29     /* 由于主函数有返回值,故返回0值 */
30     return 0;
31 

 

以上是关于在堆内存中存放十个字符串并输出 堆栈溢出时退出程序的主要内容,如果未能解决你的问题,请参考以下文章

JAVA中堆栈和内存分配原理

JAVA中堆栈和内存分配详解(摘抄)

堆栈溢出

堆栈在内存中的存储位置----详解

堆栈在内存中的存储位置----详解

JAVA中堆栈溢出