<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=%EC%9D%B4%EC%8A%B9%ED%95%9C%2F%EC%A7%88%EB%AC%B8</id>
	<title>이승한/질문 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=%EC%9D%B4%EC%8A%B9%ED%95%9C%2F%EC%A7%88%EB%AC%B8"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EC%9D%B4%EC%8A%B9%ED%95%9C/%EC%A7%88%EB%AC%B8&amp;action=history"/>
	<updated>2026-05-15T15:53:25Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=%EC%9D%B4%EC%8A%B9%ED%95%9C/%EC%A7%88%EB%AC%B8&amp;diff=66629&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:30, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=%EC%9D%B4%EC%8A%B9%ED%95%9C/%EC%A7%88%EB%AC%B8&amp;diff=66629&amp;oldid=prev"/>
		<updated>2021-02-07T05:30:31Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= 승한이 질문 페이지 =&lt;br /&gt;
 void Test(int * Ascores)&lt;br /&gt;
 {&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;in function : &amp;quot;;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; sizeof(Ascores) &amp;amp;lt;&amp;amp;lt; &amp;quot; &amp;quot; &amp;amp;lt;&amp;amp;lt; sizeof(Ascores[0]) &amp;amp;lt;&amp;amp;lt; endl;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void main()&lt;br /&gt;
 {&lt;br /&gt;
 	int scores[4]={1,2,3,4};&lt;br /&gt;
 	cout&amp;amp;lt;&amp;amp;lt;&amp;quot;in main : &amp;quot;;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; sizeof(scores) &amp;amp;lt;&amp;amp;lt; &amp;quot; &amp;quot; &amp;amp;lt;&amp;amp;lt; sizeof(scores[0]) &amp;amp;lt;&amp;amp;lt; endl;&lt;br /&gt;
 	Test(scores);&lt;br /&gt;
 }&lt;br /&gt;
strlen 처럼 int 형 배열의 길이를 구하는 함수를 짜던중 이해 안되는 부분.&lt;br /&gt;
메인에서 들어간 sizeof(scores)는 배열 전체 크기를 리턴하는 반면에 함수에 들어간 sizeof(scores)는 int* 형의 크기를 리턴한다.&lt;br /&gt;
메인에서 처럼 전체 배열크기만큼 리턴시킬수 있는 방법은 없나요??&lt;br /&gt;
&lt;br /&gt;
다른 질문.&lt;br /&gt;
참조를 이용해 배열을 함수에 넘길수는 없는건가요?? 배열은 잘 넘어가지 않네요;;&lt;br /&gt;
vs에서 타이핑하는 방식이외에 자동으로 함수를 생성해주는 바법사를 이용해 firend 함수를 생성할수는 없나요??&lt;br /&gt;
&lt;br /&gt;
== 강희경의 나름대로의 답변 ==&lt;br /&gt;
아마 승한이가 원하는 답은 아니겠지만 한번 적어본다. 지금 함수에 전달하는 것은 인트형의 포인터이기 때문에 함수는 지금 받은 것이 숫자인지 배열인지 알 수 가 없지. 게다가 주소를 참조하게 되서 함수 안에서 그 값을 변경해주면 원본 값도 변하게 되고. 그래서 나는 함수 안에 멤버 변수를 만들어서 전달 값을 복사해서 쓰거든. 보통 전달인수를 받을 때 컴파일러에서 그 원본 값을 쓰지 않고 복사값을 사용하는 건 알지? 그 작업을 프로그래머가 해주는 것이지. 밑은 여태 말한대로 구현하고 간단하게 테스트한 소스야.&lt;br /&gt;
 #include&amp;amp;lt;iostream&amp;amp;gt;&lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 void Test(int *aArray, int aLength) &lt;br /&gt;
 {	&lt;br /&gt;
 	int *copyArray = new int[aLength];//전달 배열과 같은 크기의 새로운 배열 생성&lt;br /&gt;
 	for(int index = 0; index &amp;amp;lt; aLength; index++)&lt;br /&gt;
 		copyArray[index] = aArray[index];//값 복사&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;in function : &amp;quot;; &lt;br /&gt;
     cout &amp;amp;lt;&amp;amp;lt; sizeof(copyArray[0])*aLength &amp;amp;lt;&amp;amp;lt; &amp;quot; &amp;quot; &amp;amp;lt;&amp;amp;lt; sizeof(copyArray[0]) &amp;amp;lt;&amp;amp;lt; endl;&lt;br /&gt;
 	&lt;br /&gt;
 	//여기부터는 테스트를 위해 임의로 만든 코드!&lt;br /&gt;
 	&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;\n변경 전의 copyArray : &amp;quot;;//변경 전의 값은 전달 배열과 같다&lt;br /&gt;
 	for(index = 0; index &amp;amp;lt; aLength; index++)&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; copyArray[index] &amp;amp;lt;&amp;amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; endl;&lt;br /&gt;
 	for(index = 0; index &amp;amp;lt; aLength; index++)//copyArray의 모든 값을 0으로 초기화&lt;br /&gt;
 		copyArray[index] = 0;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;변경 후의 copyArray : &amp;quot;;&lt;br /&gt;
 	for(index = 0; index &amp;amp;lt; aLength; index++)&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; copyArray[index] &amp;amp;lt;&amp;amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; endl;&lt;br /&gt;
 	&lt;br /&gt;
 	delete []copyArray;//메모리 해제는 필수!!!&lt;br /&gt;
 } &lt;br /&gt;
  &lt;br /&gt;
 void main() &lt;br /&gt;
 { &lt;br /&gt;
 	int arrayLength;&lt;br /&gt;
     int scores[4]={1,2,3,4}; &lt;br /&gt;
     cout&amp;amp;lt;&amp;amp;lt;&amp;quot;in main : &amp;quot;; &lt;br /&gt;
     cout &amp;amp;lt;&amp;amp;lt; sizeof(scores) &amp;amp;lt;&amp;amp;lt; &amp;quot; &amp;quot; &amp;amp;lt;&amp;amp;lt; sizeof(scores[0]) &amp;amp;lt;&amp;amp;lt; endl; &lt;br /&gt;
     arrayLength = sizeof(scores)/sizeof(scores[0]);&lt;br /&gt;
 	Test(scores, arrayLength);&lt;br /&gt;
 	&lt;br /&gt;
 	//검사!!&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;\n함수에 전달된 값이 변해도 scores의 값은 변하지 않는다.\nscores: &amp;quot;;&lt;br /&gt;
 	for(int index = 0; index &amp;amp;lt; arrayLength; index++)&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; scores[index] &amp;amp;lt;&amp;amp;lt; &amp;quot; &amp;quot;;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; endl;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[이승한]]&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>