วันเสาร์ที่ 11 ธันวาคม พ.ศ. 2553

Memory Management

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
main(){
       int num, result = 0;
       int *pnum;
       int i;
       num=5;        // กำหนดจำนวนที่ต้องการจอง
       pnum = (int*)malloc(num*sizeof(int));  // ทำการจองพื้นที่โดยขนาด =ค่า num คูณด้วย int
       if(pnum == NULL)     // ตรวจสอบว่าจองพื้นที่ได้หรือไม่
               printf("memory allocation failed\n");
               else{
                    for(i=0;i<num;i++){    // วนลูปเพื่อนำค่าขนาดของหน่วยความจำมาบวกกัน
                    *(pnum+i) = 0;
                    printf("num[%d] = ",i+1);
                    scanf("%d",&pnum[i]);  // เก็บค่าที่ตัวแปร pnum
                    result = result + *(pnum+i);  // เก็บค่าผลรวมทั้งหมดที่ตัวแปร result
                                       }
                    printf("summation of your numberis %d\n",result);  // แสดงผล
                    free(pnum);  //  คืนค่าหน่วยความจำที่จองทั้งหมด
                    }
       getch();
       }

ผลลัพธ์


ไม่มีความคิดเห็น:

แสดงความคิดเห็น