오류가 나는 이유..?
키클
질문 제목 : 오류가 나는 이유??Ap = (int*)A;
Bp = (int*)B;
Cp = (int*)C;
질문 내용 :
/*행렬 합
4Ⅹ4 행렬 A, B에 무작위로 100이하의 숫자를 대입한다.
배열의 인덱스를 사용하지 않고 포인터를 이용하여 행렬 합을 구한다.
A, B의 행렬 값과 행렬의 합을 출력한다.
*/
#include stdio.h
#include time.h
int main(void)
{
int A[4][4]={0,}, B[4][4]={0,}, C[4][4]={0,};//2차원 행렬 0으로 초기화
int *Ap,*Bp,*Cp,i=0,j=0;
srand((unsigned)time(NULL));
for(i=0;i4;i++)
{
for(j=0;j4;j++)
{
A[i][j] = rand()%101; // 100이하 랜덤 숫자 생성
B[i][j] = rand()%101; // 100이하 랜덤 숫자 생성
}
}
Ap = (int*)A;//여기 이부분 없으면 왜 오류가 나는건가요!?!?!
Bp = (int*)B; //여기 이부분 없으면 왜 오류가 나는건가요!?!?!
Cp = (int*)C; //여기 이부분 없으면 왜 오류가 나는건가요!?!?!
for(i=0;i16;i++,Ap++,Bp++,Cp++)
*Cp = *Ap + *Bp;
Ap = (int*)A; //여기 이부분 없으면 왜 오류가 나는건가요!?!?!
Bp = (int*)B; //여기 이부분 없으면 왜 오류가 나는건가요!?!?!
Cp = (int*)C; //여기 이부분 없으면 왜 오류가 나는건가요!?!?!printf(Matrix A = );
for(i=0;i16;i++,Ap++)
{
if(i%4 == 0) printf(\n);
printf(%5d,*Ap);
}
printf(\n\nMatrix B = );
for(i=0;i16;i++,Bp++)
{
if(i%4 == 0) printf(\n);
printf(%5d,*Bp);
}
printf(\n\nMatrix A + B = );
for(i=0;i16;i++,Cp++)
{
if(i%4 == 0) printf(\n);
printf(%5d,*Cp);
}
return 0;
}
-
지후 2024-02-25
그리고, srand(), rand() 를 쓰기 위해서는 stdlib.h 헤더 파일이 필요 합니다
-
해찬솔 2024-02-25
(첫부분)각 배열 원소의 합이나 출력 부분에서 포인터 변수를 쓰는데.. 만약 질문하신 부분이 없다면, 인트형 포인터 변수만 선언(Ap, Bp, Cp)만 해놓고 아무것도 가르키고 있지 않는 빈 포인터 변수로 연산을 하는것과 같으니깐 오류를 내는것 같아요.
(두번째 부분)포인터로 증가 연사자를 써서 주소값이 달라졌거든요. 그래서 다시 초기화 해준겁니다.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2690627 | c 변수 선언후 변수값 저장안하고 출력 | 방방 | 2025-04-06 |
2690600 | 릴리즈 모드로 컴파일해서 다른 컴퓨터에서도 실행파일을 실행할수 있는 방법 알려주세요 (5) | 제나 | 2025-04-06 |
2690576 | bin파일 저장 | 다올 | 2025-04-06 |
2690547 | C언어 뒷부분이라 너무 어려워서요;; 프로그래밍 하나만 부탁드립니다 (4) | 그루터기 | 2025-04-05 |
2690517 | cygwin에서요.. (1) | 엘보어 | 2025-04-05 |
2690486 | 문자열과 문자형이요 ~ | 다스리 | 2025-04-05 |
2690344 | 일본어 주석 깨짐 문제 (3) | 연하얀 | 2025-04-04 |
2690314 | 암호문 만들기 -비제네르- | 이퓨리한나 | 2025-04-03 |
2690292 | 왕초보자의 질문!!!!!! 도와주세요 (1) | 하랑 | 2025-04-03 |
2690269 | 정올 문제 인데.. 흠 | 반월 | 2025-04-03 |
2690237 | sizeof에서 short형을 썻는데 왜 4byte가 나올까요? (1) | 바나나 | 2025-04-03 |
2690183 | 문자열과 포인트 비교 (2) | 미즈 | 2025-04-02 |
2690154 | a -48 ? | 희미한눈물 | 2025-04-02 |
2690094 | 테트리스 질문요. | 지후 | 2025-04-01 |
2690066 | 문자열비교!! (1) | 매디 | 2025-04-01 |
2689888 | 좀도와주세요;; ㅠㅠ | 사람 | 2025-03-30 |
2689856 | 메뉴 그리는 거 질문 | 나라빛 | 2025-03-30 |
2689831 | c언어 프로그램 추천 | 하연 | 2025-03-30 |
2689801 | c언어 time.h에서 작동이 중지되었습니다. | 하람 | 2025-03-30 |
2689772 | 2차원 배열의 배열명에 대해서.. | 옆집꼬마야 | 2025-03-29 |