static int pwd = 78;
int changepwd(int new){
pwd = new;
리턴0;
}
여기서 changepwd함수가 포인터가 아니라 걍 int형을 받는 이유가 전역변수 pwd가 static형이라서 함수가끝나도 값이 유지되기 때문에 굳이 주소값이 필요없기때문 인가요??
int changepwd(int new){
pwd = new;
리턴0;
}
여기서 changepwd함수가 포인터가 아니라 걍 int형을 받는 이유가 전역변수 pwd가 static형이라서 함수가끝나도 값이 유지되기 때문에 굳이 주소값이 필요없기때문 인가요??
static 전역변수는 extern 막는용도임
그럼 changepwd함수가 주소값 안필요하는 이유가 pwd가 전역변수이기때문인가요?
주소값이 필요하다고생각하는 이유가 머임
함수로 매개변수를 보낼때 매개변수가 전송대는게 아니라 그거의 복사본이 만들어지고 그 복사본으로 이거저거 하는거라서 원래 매개변수에 영향이 안가기때문에 포인터를 써야한다고 압니다
어 맞어 전역변수라서임.
감사함니덩 근데 static은 함수가 끝나도 값이 유지되는거 맞나요?
스태틱은 용도가 두가지임. 함수리턴시 값고정이랑 extern 접근제한 ㅇㅇ 자세한건 제발제발 꼭 스택오버플로우 참고해라.
감사함니덩 근데 static은 함수가 끝나도 값이 유지되는거 맞나요? // 맞음, static 변수메모리는 프로그램 종료시 사라짐
그리고 저 위에서 extern 과 static의 관계는 지금 이해하기 난해하기 때문에 나중으로 밀어도 상관없음