CPython과 다르게 C에서는 reference를 주고 받으면서 작동하기가 꽤나 어렵습니다.
함수 내부에서 동적으로 메모리를 할당하고 메트릭스 연산을 한 뒤, 해당 포인터를 반환하면 방식으로 구현하였습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
int** mult_mat(int** matA, int** matB, int i, int k, int j) {
// 동적 할당
int ** matRet = malloc(sizeof(int*) * i);
// 메트릭스 연산
for (int a = 0; a < i;a++) {
matRet[a] = malloc(sizeof(int) * j);
for (int b = 0; b < j; b++) {
matRet[a][b] = 0;
for (int c = 0; c < k; c++) {
matRet[a][b] += matA[a][c] * matB[c][b];
}
}
}
return matRet;
|
cs |
'프로그래밍' 카테고리의 다른 글
Anaconda Command 정리 (0) | 2020.06.12 |
---|---|
Cygwin에서 C Drive 찾기 (0) | 2020.06.11 |
CUDA intro (0) | 2020.06.10 |
Cygwin에서 패키지 다운 받기(gcc, ...) (0) | 2020.06.10 |
[알고리즘] 어린왕자 10004 파이썬 풀이 (0) | 2020.05.16 |