웹개발/HTML

[C, C++ 통합] 2014.03.21 (C++ 포함 1)

에르소 2014. 3. 21. 12:15
반응형

/* [예제 1번]

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

int main()
{
 int *p;
 p = (int*)malloc(4);
 if(p == NULL); // 힙메모리 할당 실패 판별
 {
  printf("메모리 할당에 실패!\n");
  return 0; // 프로그램 종료
 }
 // 힙메모리 할당 성공
     *p = 20;
  printf("힙에 저장된 변수 p: %d \n",*p);

  free(p);                     // 동적 메모리 해제
  return 0;
  }
 // 힙 메모리 할당 성공


// malloc 함수 (void*)
// 메모리 동적 할당
--------------------------------------- 예제 1번 끝 ---------------------------------------------------
*/


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

void function(int _memory);
int main()
{
 int memory = 0;
 printf("배열의 크기를 입력하세요 :");
 scanf("%d", &memory);
 function(memory); // call by value
 return 0;
}

//function() 함수 :배열의 크기를 전달받아서, 힙 메모리에 메모리 할당받아.
//           int 형 1차원배열의 요소의 내용 출력

void function(int _memory)
{
 // int arr[_memory]; <---""int(4byte) * _memory"" byte
 int *array = (int*) malloc(sizeof(int)* _memory); // 동적 메모리 할당
 int i;
 if(array ==- NULL)
 {
  printf("메모리 할당에 실패!\n");
  exit(1);
 }
 for(i=0; i<_memory; i++)
 {
  //*(array+i) = i + 1;
  array[i] = i +1;
 }
 for(i=0; i<_memory; i++)
 {
  printf("%d",array[i]);                // printf("%d",*(array+i));
 }
 printf("\n");
 free(array);

}


// → constance value

// array = 객체로 인식해버렷음 ㅇㅇ

 


/*
[C언어]
== 동적 메모리 할당과 해제 ==
#include <stdlib.h>
실행시간, 힙메모리
1) 동적 메모리 할당
*/

--------------------------------------------------------------------------------------------------------------

 

//c in
#include <stdio.h>

int main()
{
 int a;
 int b;
 double c;

 scanf("%d",&a);
 scanf("%d %d", &a, &b);
 scanf("%f", &c);
 return 0;
}

--------------------------------------------------------------------------------------------------------------

 

//[c++ in]

#include <iostream>

int main()
{
 int a;
 int b;
 double c;
  // cin >> 입력변수
 std::cin >> a;  //scanf("%d",&a);
 std::cin >> a >> b; //scanf("%d %d", &a, &b);
 std::cin >> c;      //scanf("%f", &c);
 return 0;
}

--------------------------------------------------------------------------------------------------------------

 

#include <iostream>

int main()
{
 char name[100];
 char language[200];

 std::cout << "이름은 무엇입니까?";
 std::cin >> name;

 std::cout << "좋아하는 프로그래밍 언어는어떻게 되나요 ?";
 std::cin >> language;

 std::cout << "이름:" <<name << std::endl;
 std::cout << "언어:" <<language << std::endl;

 return 0;

}

--------------------------------------------------------------------------------------------------------------

//문제 2

#include <iostream>

int main()
{
 int num;
 int i;

 std::cout << "출력하고 싶은 단은 몇단 ? ";
 std::cin >> num;

 for (int i = 1; i<10; i++);
 {
  std::cout << num << " * "<< i << "=" << num*i << std::endl;
 }
 return 0;
}
--------------------------------------------------------------------------------------------------------------

 

[C++]

#include <iostream> //구버전 iostream.h
                    //신버전 iostream

int main()
{
 // cout << 출력대상;
 // << 출력연산자
 std::cout << "c++ 출력" << std::endl; // pritnf("c언어 출력 \n");
 std::cout << 10 << std::endl;         // printf("%d \n",10);
 std::cout << 3.14 << std::endl;       // printf("%f \n",3.14);
 std::cout << 'A' << std::endl;        // printf("%c \n",'A');
 std::cout << "String" << std::endl;   // printf("%s \n","spring");
 std::cout << 10 << ' ' << 20 << std::endl;   // printf("%d %d\n",10,20);
 return 0;
}

--------------------------------------------------------------------------------------------------------------

 

c언어 malloc, calloc 함수
: 메모리 동적 할당

[1]c언어 메모리 동적 할당 malloc, calloc
 -> void * malloc(int size)
포인터 변수 = [적절한 형변환] malloc (얼마나 받을것인지)

2. 메모리 해제 함수 Free
: void free(void *)
메모리를 반납하는 함수, 동적할당을 한 후에 해제 하는 것

--------------------------------------------------------------------------------------------------------------

 

 

 

 

 

 

 

반응형

'웹개발 > HTML' 카테고리의 다른 글

JSP 시작하기 ( 출력버퍼 / 플러쉬 )  (0) 2014.03.28
[C, C++ 통합] C++ Funtion Overloading (함수의 오버로딩)  (0) 2014.03.21
[C, C++ 통합] 8일차  (0) 2014.03.17
[C, C++ 통합] 6일차  (0) 2014.03.17
[C, C++ 통합] 5일차  (0) 2014.03.17