자격증/정보처리기사

[C언어]scanf , 생성자

딸기뚜왈기 2024. 10. 16. 15:47

scanf("%d"(인자), 주소값)

 

i 값이 10이고, 주소값이 100이라고 쳤을 때

여기에 90을 입력하고 싶으면

 

 

scanf("%d", 100) 이라고 주소값을 넣어줘야 한다.

scanf("%d", &i)  의 &i 안에 100이 들어가야 한다.

scanf("%d", 100)을 입력하고 90을 넣어주고 엔터 치면 i = 90

 

#include<stdio.h>
int main() {
    inti=10;
    intj=20;
    int*k=&i;

    scanf("%d", k);
    printf("%d, %d, %d \n',i,j,*k);  //k의 값 100번지의 값인 90 출력
    return 0;
}

//100번지 i 10
//200번지 j 20
//300번지 k 100번지   : k는 포인터 변수인데 , &i니까 i의 주소값이 들어감.

scanf("%d", k)
scanf("%d", 100번지) 에 90이라는 값을 입력 받게 되는 것.

//100번지 i 90
//200번지 j 20
//300번지 k 100번지


//출력
//90, 20, 90

 

 

 

 

강의 21:00분

 

scanf("%d", &ary[i]);  &ary[i] = ary[i]위치에 해당하는 주소값 . 

scanf("%d", ary+1); 

 

위 둘은 같다. ary 에는 가장 처음 주소값이 들어가 있다.

 

 

 

 

 

i 값이 10이고, 주소값이 100이라고 쳤을 때

 

여기에 90을 입력하고 싶으면

 

scanf("%d", 100) 이라고 주소값을 넣어줘야 한다.

 

scanf("%d", &i) 의 &i 안에 100이 들어가야 한다.

 

scanf("%d", 100)을 입력하고 90을 넣어주고 엔터 치면 i = 90

 

 

 

#include<stdio.h>

int main() {

    inti=10;

    intj=20;

    int*k=&i;

 

    scanf("%d", k);

    printf("%d, %d, %d \n',i,j,*k); //k의 값 100번지의 값인 90 출력

    return 0;

}

 

//100번지 i 10

//200번지 j 20

//300번지 k 100번지 : k는 포인터 변수인데 , &i니까 i의 주소값이 들어감.

 

scanf("%d", k)

scanf("%d", 100번지) 에 90이라는 값을 입력 받게 되는 것.

 

//100번지 i 90

//200번지 j 20

//300번지 k 100번지

 

 

//출력

//90, 20, 90

 

 

 

 

 

 

 

 

강의 21:00분

 

 

 

scanf("%d", &ary[i]); &ary[i] = ary[i]위치에 해당하는 주소값 . 

 

scanf("%d", ary+1); 

 

 

 

위 둘은 같다. ary 에는 가장 처음 주소값이 들어가 있다.