Development
-
[열혈강의 C]Part2. 13장 - 포인터와 배열! 함께 이해하기-두번째[포인터/배열 완전정복]Development/C 2013. 8. 23. 15:21
포인터와 배열 완전 정복하기!!-두번째 날씨도 더운데 이 선풍기 바람좀 쐬면서 좀 더 시원해지세요~ ㅋㅋㅋ 겨울에 이 글을 보는사람은 어쩔수 엄슴..ㅠㅠ 추워도 참으셔야댐 ▼이전 글 보기(클릭)▼2013/08/22 - [ETC/▶프로그래밍] - [열혈강의 C]Part2. 13장 - 포인터와 배열! 함께 이해하기-첫번째[포인터/배열 완전정복] 13-3문자열 상수를 가리키는 포인터 [1]문자열 표현 방식의 이해 - 포인터가 표현하는 문자열 상수 이건 쫌 중요한문제입니다..ㅇ-ㅇ문자열을 표현하실 때 어떻게 표현하시나요? 대부분 printf함수를 쓰거나 배열을 사용하여 표현하곤 합니다.하지만, 포인터로도 문자열을 표현할 수 있다는 사실 알고 계셨나요~? char string[5]="abcd";char *pStr..
-
[열혈강의 C]Part2. 13장 - 포인터와 배열! 함께 이해하기-첫번째[포인터/배열 완전정복]Development/C 2013. 8. 22. 14:07
포인터와 배열 완전 정복하기!! 날씨도 더운데 이 선풍기 바람좀 쐬면서 좀 더 시원해지세요~ ㅋㅋㅋ 겨울에 이 글을 보는사람은 어쩔수 엄슴..ㅠㅠ 추워도 참으셔야댐 이번 시간에는 포인터와 배열을 동시에 배워보도록 하겠습니다.포인터를 완벽히 정복하기 위해서는 포인터와 배열을 각각 이해하는 것뿐만 아니라, 이 둘을 함께 이해하는 과정도 필요합니다.포인터와 배열은 매우 밀접한 관계를 맺고 있기 때문인데요.이 관계를 이해하는 것은 포인터의 특징을 이해하는데 있어서 상당히 중요한 부분을 차지하니 꼭!! 마스터 하시길 바랍니다!! ㅇㅅㅇb 향후 다차원배열과 다중포인터의 관계로 들어가다보면 지금보다 훨씬 어려워지게 됩니다. 그 때가서 후회하시지마시고 이 장에서 확실히 이해하고 넘어가시길 바랍니다-☆ 13-1. 포인터..
-
[열혈강의 C]Part2. 12장 - 포인터의 이해(연습문제12-1-3)Development/C 2013. 8. 9. 16:11
[연습문제 12-1-3] int형 변수 a와 b를 선언과 동시에 각각 10,20으로 초기화시킨다. 그리고 포인터 p1과 p2를 선언 한 다음 각각 변수 a와 b를 가리키게 한다. 이러한 상테에서 간접 접근 방식에 의해서 값을 하나 감소시킨다. 그 다음 포인터 p1과 p2가 가리키는 대상을 서로 바꿔준다. #include int main(void) { int a=10; int b=20; int *p1=&a; int *p2=&b; int *temp; printf("변경전::: p1 : %d / p2 : %d\n",*p1,*p2); (*p1)--; (*p2)--; temp=p1; p1=p2; p2=temp; printf("변경후::: p1 : %d / p2 : %d\n",*p1,*p2); return 0; }..
-
[열혈강의 C]Part2. 12장 - 포인터의 이해(연습문제12-1-2)Development/C 2013. 8. 9. 15:53
[연습문제 12-1-2] char형 변수 a, int형 변수 b, float형 변수 c, double형 변수 d, 이렇게 총 4개의 변수를 선언하자(초기값은 임의로 정하기 바란다). 그리고 포인터 p1, p2, p3, p4를 선언해서 각각 a,b,c,d를 가리키게 하자. 그 다음에 포인터 p1, p2, p3, p4를 이용해서 a, b, c, d의 값을 1 증가시킨다. 즉 간접 접근방식에 의해서 값을 하나 증가시키라는 뜻이다. #include int main(void) { char a='a'; int b=1; float c=1.3f; double d=3.5; char *p1=&a; int *p2=&b; float *p3=&c; double *p4=&d; printf("p1=%c\np2=%d\np3=%f\n..
-
[열혈강의 C]Part2. 11장 - 1차원 배열(연습문제11-2-3)Development/C 2013. 8. 7. 22:32
[연습문제 11-2-3] 문자열을 입력받는다. 입력받은 문자열을 구성하고 있는 문자 중에서 아스키 코드 값이 가장 큰 문자를 찾아서 출력하는 프로그램을 구현해 보자. 예를 들어서 입력된 문자열이 "abc"라면 이 중에서 아스키 코드 값이 가장 큰 문자는 'c'이다. 따라서 c를 출력 해 준다. #include #include int main(void) { char string[100]; char max_ascii=0; int i; printf("문자열을 입력하세요: "); gets(string); //scanf("%s",string); for(i=0;string[i]!='\0';i++) { if(max_ascii
-
[열혈강의 C]Part2. 11장 - 1차원 배열(연습문제11-2-2)Development/C 2013. 8. 7. 18:56
[연습문제11-2-2] 사용자가 입력한 문자열을 배열에 저장한 다음, 배열 내에서 문자열을 역순으로 뒤집는다. 그리고나서 제대로 뒤집어졌는지 확인하기 위해서 문자열을 출력해 보는 프로그램을 작성해 보자. #include#include int main(void){ char arr[100];//문자열할당 char arr2[100];//문자열복사용 char temp; int size; printf("문자열을입력하세요(최대자까지입력가능) : "); gets(arr); // scanf("%s",arr); /* scanf는 널(null)문자. 즉, '\0'이 끝나는 기준으로 문자열을 인식하고, gets는 문자행('\n')이 끝나는 기준으로 문자열을 인식하는 차이가 있습니다. */ strcpy(arr2,arr); /..
-
[열혈강의 C]Part2. 11장 - 1차원 배열(연습문제11-1-3)Development/C 2013. 8. 6. 23:27
[연습문제 11-1-3] 길이가 26인 char형 배열을선언해서 문자 'A'부터 'Z'까지 저장한다. 선언과 동시에 초기화하라는 뜻이 아니다. 반복문을 이용해서 저장하는 형태를 취해야 한다. 그리고 배열에 모든 요소를 처음부터 끝까지 출력하는 프로그램을 작성하자. 문제 해결에 들어가기에 앞서서 여러분들에게 한가지 질문을 하겠다. 혹시 아스키 코드 표를 참조해야만 문제를 해결할 수 있다고 생각하는가? 그렇다면 아스키 코드값을 모르고도 해결할 수 있는 방법은 없겠는가? #include /*아스키코드를이용한방법*/ int main(void) { char arr[26]; int cnt=65; for(int i=0; i