Coding In C day12

/*
 * malloc练习
 *
 * */

#include <stdlib.h>
#include <stdio.h>

int main()
{
	int *p_value = NULL;

	p_value = (int *) malloc (1 * sizeof(int));
	if (p_value) {
		printf(" p_value是0x%p\n",  p_value);
		printf("*p_value是%d\n", *p_value);
		free(p_value);
		p_value = NULL;
	}
	}

	return 0;
}

/*
 * calloc(), realloc()练习
 *
 * 不同于malloc,calloc会将把开辟的存储空间初始化为零
 *
 * */

#include <stdlib.h>
#include <stdio.h>

int main()
{
	int *p_value = (int * ) calloc(4, sizeof(int));
				//(int * )   malloc(4 * sizeof(int));
	if (p_value) {
		printf(" p_value是0x%p\n", p_value);
		printf("*p_value是%d\n", *p_value);
		void *pointer = NULL;
		pointer = realloc(p_value, 6 * sizeof(int));
			//realloc(p_value, 0);实际效果就等于语句free(p_value);
			//p_value = NULL, realloc(p_value, 4*sizeof(int));实际效果就
	       //等于语句p_value = NULL, p_value = (int *)malloc(4*sizeof(int));
		if (pointer) {
			p_value = (int * )pointer;
		}
		printf(" p_value是0x%p\n", p_value);
		printf("*p_value是%d\n", *p_value);
		free(p_value);
		p_value = NULL;
	}
}

/*
 * Input: 1234
 * Output: 4321
 * */

#include <stdio.h>
#include <stdlib.h>

int main()
{
	typedef enum {N, Y} en_retry;

	en_retry over = N;
	int *p_integer = NULL;
	int *p_integers[100] = {NULL};

	int counter = 0;
	do {
		p_integer = (int *) malloc(sizeof(int) * 1);
		if (p_integer) {
			printf("Input an Integer");
			scanf("%d", p_integer);
			p_integers[counter++] = p_integer;
		}
		printf("Another?[Y/N]");
		printf("%d\n", over);
		scanf("%d", &over);
		printf("%d\n", over);
	} while (over);

	for (--counter; counter >= 0; counter--) {
		printf("%d\t", *p_integers[counter]);
		free(p_integers[counter]);
	}
	printf("\n");

	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值