본문 바로가기

전체 글83

#18 [열혈 C 프로그래밍] 도전! 프로그래밍3 - 1번, 2번, 3번, 4번, 5번, 6번 코드와 해설 1번 이렇게도 돌려보고 저렇게도 돌려보고 한 배열안에서 어떻게든 해결하려고 했는데 결국 손으로 그리는 방식이 제일 간단하다는 생각을 하게 되었습니다... 배열을 관련없는 곳에 저장 후에 차례차례 저장하기. 다 풀고 나면 왜 이런 생각을 못한거지? 싶은 생각이 드는데 이 자체가 제가 발전한 증거가 아닐까...하고 생각하려 합니다..ㅜㅜㅜ #include void Rotate(int (*arr)[4],int repeat ); int main() { int arr[][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; Rotate(arr,3); //3번 회전 시키기 return 0; } void Rotate(int (*arr)[4],int repeat) { int alter[4][.. 2022. 8. 4.
#17 [열혈 C 프로그래밍] 도전! 프로그래밍2 - 1번, 2번, 3번, 4번 p328의 도전 1 내가 짠 코드 #include void OddNumber(int * arr,int len){ //홀수 함수 for(int i=0;i 2022. 8. 4.
#16 C언어 *의 피연자는 포인터여야 하는데 Int 형식이 있음 오류 *의 피연자는 포인터여야 하는데 Int 형식이 있음이라는 에러가 날 때는 아마 포인터 배열을 사용한 경우일 것입니다. void example(int * i){ int j = *i[1]; } int main(void){ int arr[4] = {1,2,3,4}; example(arr); //arr의 시작주소 전달 } 라는 코드를 짜면 제목과 같은 에러가 뜹니다 하이라이트 친 부분을 자세히 보면 알 수 있습니다. 저는 main함수에 arr을 선언하고 arr의 시작주소를 example함수의 매개변수인 포인터 i로 전달하였습니다. 그렇다면 arr의 시작주소는 i의 시작주소가 되어 i를 arr배열 그 자체처럼 쓸 수 있게 됩니다. *i[1]가 아니라 i[1]이 되는 것이 맞는 것이고 포인터를 포인터 자체로 보기보.. 2022. 8. 4.
반응형