달력

12

« 2024/12 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2017. 11. 22. 17:25

c언어 함수 Programming Language/C언어 공부 기록 2017. 11. 22. 17:25

함수는 독립적으로 수행하는 프로그램 단위를 말한다


C언어는 여러 개의 함수들로 이루어지고 

프로그램에서 반복적으로 수행되는 기능을 함수로 만들어서 호출한다 .


C언어에서 자료형과 함수는 짱짱 중요하다고 생각한다.


함수는 문제 해결의 방법이다 --> 주어진 문제를 작은 문제, 즉 여러 함수로 나누어서 생각할 수 있으므로 함수를 만드는 것은

   문제 해결의 하나의 방법이다 .


함수 이용의 장점 

함수로 구성된 프로그램은 함수 단위로 구성되어 있어, 읽기 쉽고, 이해하기 쉽다. 

이미 정의된 함수는 여러번 호출이 가능하므로 소스의 중복을 최소화해서 프로그램 양을 줄이는 효과가있다 .



C프로그램 함수의 종류에는...


1)주(main)함수 

프로그램의 시작과 종료를 나타내는 함수로, 프로그램에 main()함수는 꼭 있어야 한ㄴ 함수이며, 사용자 정의 함수라 할 수 있다.


2)사용자 정의 함수: 사용자(프로그래머)가 문제를 분석하여 필요한 기능으로 분류하여 기능열로 코딩하고자 할 때 만드는 함수다

 ex)) add(), swap()


3)시스템 라이브러리 함수: 많이 사용하는 기능의 함수들을 시스템에서 미리 만들어 놓고 사용자가 사용할 수 있도록 제공하는 함수다 


 

가장 중요한건 내가..함수를 작성할줄 알아야..내가 만들수있는 능력이 있어야 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 가져다

쓸수있다는거.. 



매개 변수라는건 함수와 함수사이의 서로 주고받는 데이터가있다면 그런 변수 그런거를 매개변수라고 한다 

&(앤퍼센트~)


함수(function, 모듈, 메소드(c++,Java))


매개변수 없는 함수 만들기

print만하고 돌아오거나.. 그런식 


void hello(void) 

void main()

{

hello();//함수 소출

}

//함수 정의 

void hello()

{

printf("Hello c!");

return;


}

add는부를때만생성되서만들고 다쓰면 돌아가서 없어지는 효율성..그래서 call by value 

 


매개변수(parameter, 인자, argument)

함수와 함수 사이에 주고 받는 값(예: 변수값, 상수값)


변수(variable)

프로그램에서 데이터를 저장하는 공간

지역변수: 함수 지역 안에서 선언된 변수는 다른 변수에서 그 내용을 보거나 수정 할 수 없음 


매개변수없는함수 

매개변수 있는 함수 만들기 

지역변수

함수 호출 방법: call by value


return값은 1개만 가지고올수있으음?~main 이라는 명령어.. 




[함수 호출 방법]

값에 의한 호출

주소에 의한 호출 (call by addres)

해결방법 

main 함수에 있는 변수의 주소값을 가지고

 swqp()함수를 호출하면 swap()함수에서 main함수의 변수값을 바꿀 수 있음

(포인터 변수 사용)

바꾸기 위해서는 역참조 연산자를 사용해야함 ..


*두가지용법

1)포인터 변수 선언

2)역참조 연산자

포인터 변수: 주소를 값으로 가지는 변수 

주소값을 저장하기 위해서는 포인터 변수가 필요함 


포인터 변수는 주소값만 값으로 가질 수 있음 

int *p = &a 

p = &a 

역참조 연산자: 포인터 변수 선언 후에 문장중에 포인터 변수 앞에 *가 오면

 (*p)포인터 변수가 가리키는 main변수의 값을 변경할 수 있음 

'Programming Language > C언어 공부 기록 ' 카테고리의 다른 글

c언어 1~2주차  (0) 2017.11.22
상수와 기본 자료형과 그외 등등등  (0) 2017.11.21
:
Posted by Gongdile