나는 단순해야하는 것을하려고합니다. 나는 그것에 하나의 원소만을 가진 배열을 만들고있다. 좌표는 무엇입니까?C 배열의 3D 배열 및 내용 인쇄
그래서 Id는 1 행 3 열 1 x y 및 z 열로 배열을 만든다고 생각했습니다. 이 숫자는 지속적으로 업데이트 될 예정이다 내가 이전 시점의 메모리를 필요로하지 않기 때문에 그 그냥 계속 그래서 여기
오버라이드 (override) 할 것 때문에 더 이상 행을 필요로하지 않는 나의 배열
int coordinates[1][3] = {1,1,1};
이것은 올바른 방법으로 값을 출력했는지 확인하려는 것입니다. 그것은 여기에 내 생각 뭐가 문제 행 1 열 1 행 1 열 2, 행 1 열 3
를 인쇄 할 것이다
는printf("%d %d %d\n", coordinates[1][1],coordinates[1][2],coordinates[1][3]);
printf("\n");
내 생각? 나는 내 결과로 1 1 1
을 얻지 못하고있다. 나는 무작위 숫자를 얻고있다.
나는 C에 익숙하지 않다. 이것은 사소한 것처럼 보이고 나는 그것에 너무 많은 바퀴를 돌리기 시작했다.
편집 :. 일을 작업 MY 과정 (101)을 배열 다시 생각
"이것은 내가 시도한 최초의 일이었다 (또한 주석을 참조) 및 인덱싱은 N-1 내가 임의의 요소를 얻는 것처럼 보였다 때문에 배열 주소 바깥의 메모리 주소. 여전히 불행하게도 벽에 머리를 때리기 시작했습니다. "
나는printf("%d %d %d\n", coordinates[0][0],coordinates[0][1],coordinates[0][2]);
printf("\n");
을 시도했지만 다시 난 임의의 숫자
결론을 얻었다
나는 마침내 내가 잘못하고 있었는지 알아 냈어 좋아. 너 모두 옳았다. 내 코드의 잘못된 부분을보고있었습니다. 신속한 답변에 감사드립니다. 무슨 일이 있었는지 원래 내 코드에서 float로 좌표를 호출했습니다. 나는 여기서 그것을 int라고 부르므로 복사와 과거를하지 않았다. 그래서 내가 % d로 printf를하려고 할 때 엉망인 결과를 초래하는 float에 대해 int를 출력하려했습니다. 나는 % d을 % f (나는 printf가 어떻게 작동하는지 알지 못했다.)로 바꿨다. 그린 경적 실수와 그것에 대해 미안 해요! 도와 주셔서 다시 한 번 감사드립니다!
이것이 내가 시도한 첫 번째 것입니다. 배열 바깥 쪽의 임의의 메모리 주소에 요소를 가져 오는 것처럼 보였기 때문에 배열 101과 인덱싱을 다시 생각하면 n-1입니다. 불행히도 벽에 머리를 치기 시작한 메신저는 아직 작동하지 않았습니다. – CoffeePeddlerIntern
@CoffeePeddlerIntern printf ("% d % d % d", 좌표 [0] [0], 좌표 [0] [1], 좌표 [0] [2]); 잘 작동해야합니다. 코드는 괜찮습니다. – LearningC