수업 6주차 수업 - junhwan1206/ex250310_first GitHub Wiki

인수, 매개변수, 화면 캡처 2025-04-14 141048

데이터의 유효성 검증 때문에

데이터를 무한대로 생각하여 보면 일일이 하나씩 해야하기 때문에

함수의 정의는 여러가지가 있을 수 있지만

main만 실행한다

포인터

int n = 10;

int k = n;

메모리에서 이런것을 value copy라고 하는데

cpu 범용적인 사용처 gpu 간단한 산수 +-x/같은 간단한 것들만 가능

결론적으로 데이터를 해석하는데 가벼운 것은 괜찮지만 무거운 것은 느리기 떄문에

주소를 이용하면 더 가볍게 이용할 수 있기 떄문에 주소를 이용할건데 그것을 활용하는게 포인터다.

&와 *

ex) int n = 10;

int * k = &n;

n 정수값 value ,k 포인터pointer 레퍼런스reference

변수앞 &를 붙이면 시작주소를 나타낸다

주소<-&-변수

주소-*->변수 *p는 "p가 가리키는 곳의 값"을 의미 &a는 "a의 주소"를 의미

6주차 수업 코드

#include <stdio.h>
int main()
{
    puts("Hello\n");
    printf("integer : %d\n", 100);
    printf("string : %s\n, "Hello!");
}

#include <stdio.h>
int main()
{
    double A, B;
    scanf("%if %if", &A, &B);
    printf("%.9if\n", A / B);
    return 0;
}
#include <stdio.h>
int main()
{
	int n = 10;
	int n2 = n;
	int* p = &n;
	int* p2 = p;
	

	*p2 = 20;
	printf("%d %d %d\n", n, *p,*p2);
	
}
#include <stdio.h>
int main()
{
	double d;
	double d2 = 7.77;
	double* pd;
	double** ppd;
	d = 5.55;
	pd = &d;
	ppd = &pd;
	printf("%g %g %g", d, *pd, **ppd);
}
#include <stdio.h>
int main()
{
	double d;
	double*pd;
	double**ppd;
	d = 5.55;
	pd = &d;
	ppd = &pd;
	printf("%g %g %g", d, *pd, **ppd);
}
#include <stdio.h>
int main()
{
	int n = 10;
	int* p = &n;
	int** pp = &p;
	printf("%d %d %d\n", n, *p, **pp);
	printf("%p %p %p\n", &n, &*p, &**pp);
	printf("%p %p %p\n", &n, p, *pp);
	return 0;
}
#include <stdio.h>
int main()
{
	int n = 10;
	int* p = &n;
	int** pp = &p;
	printf("%d %d %d\n", n, *p,**pp);
	return 0;
}

#include <stdio.h>
int main()
{
	char c = 10;
	double d = 5.6;

	char* p1 = &c;
	double* p2 = &d;
	printf("%d %g\n", c, d);
	printf("%d %g\n", *p1, *p2);
	printf("%d %g\n", *&c, *&d);


	return 0;
}

#include <stdio.h>
int main()
{
	char c = 10;
	double d = 5.6;

	char* p1 = &c;
	double* p2 = &d;
	printf("%d %g\n", c, d);
	printf("%p %p\n", p1, p2);
	printf("%p %p\n", &c, &d);


	return 0;
}
#include <stdio.h>
int main()
{
	int n = 10;
	int* k = &n;
	n = 100;
	printf("%d %d\n", n, *k);
	printf("%p %p\n", &n, k);

	return 0;
}
#include <stdio.h>
int main()
{
	int n = 10;
	int* k = &n;
	n = 100;
	printf("%d %d\n", n, *k);

	return 0;
}
#include <stdio.h>
int main()
{
	int n = 10;
	int* k = &n;
	//n = 100;
	printf("%d %d\n", n, *k);

	return 0;
}
#include <stdio.h>
int main()
{
	int n = 10;
	int k = n;
	n = 100;
	printf("%d %d\n", n, k);
return 0;
}
#include <stdio.h>
int main()
{
	return 0;

}
#include <stdio.h>
void PrintA()
{
	printf("PrintA()\n");
}
void PrintB()
{
	PrintA();
	printf("PrintB()\n");
}
void PrintC()
{
	PrintB();
	printf("PrintC()\n");
}
int main()
{
	PrintA();
	PrintB();
	PrintC();

}
#include <stdio.h>
void PrintA()
{
	printf("PrintA()\n");
}
void PrintB()
{

	printf("PrintB()\n");
}
void PrintC()
{
	PrintB();
	printf("PrintC()\n");
}
int main()
{
	PrintA();
	PrintB();
	PrintC();

}
#include <stdio.h>
void PrintA()
{
	printf("PrintA()\n");
}
void PrintB()
{

	printf("PrintB()\n");
}
void PrintC()
{

	printf("PrintC()\n");
}
int main()
{
	PrintA();
	PrintB();
	PrintC();

}
#include <stdio.h>
int Increment(int k) 
{
	return k+1;
}
int main()
{
	int n = 10;
	printf("data : %d\n", n);
	n = Increment(n); //++n;
	printf("data : %d\n", n);
	n = Increment(n); //++n;
	printf("data : %d\n", n);
	n = Increment(n); //++n;
	printf("data : %d\n", n);
	n = Increment(n); //++n;
	printf("data : %d\n", n);
	n = Increment(n); //++n;
}
#include <stdio.h>
int main()
{
	int n = 10;
	printf("data : %d\n", n);
}
⚠️ **GitHub.com Fallback** ⚠️