6개의 댓글이 있습니다.
-
-
dgoon -
void mul(int a[64]) is equivalent to void mul(int * a)
타입이 array 라도 함수 호출시에 포인터로 받습니다. C에서는 '배열'은 항상 '포인터'로 변해서 넘어가는 걸로 알고 있습니다. 그래서 memset에도 꼭 size를 넣어주는 것일 테고요. ( sizeof 가 제대로 동작하면 memset에 굳이 size를 넘길 필요가 없겠... -_-a - 생각해보니 꼭 그런건 아니군요 ;;)
그래서 signature는 void(int (*)[64], int (*)[64], int (*)[64])가 됩니다.
4 <- sizeof( int (*)[64] )
16384 <- sizeof( int [64][64] )
17년 전 link
-
-
-
Taeyoon_Lee -
=_=경험적으로 안된다는 걸 알고 있지 않나?
17년 전 link
-
-
정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
Yongrok
탑코더 SRM 377, 500문제 푸는데 동작하지 않아서 봤더니
아래의 memset구문이 메모리 초기화를 시키지 못하더군요;
왜그럴까요?
[code]
void mul( int a[64][64], int b[64][64], int c[64][64], int n){
memset( c, 0, sizeof(c) ); // why doesn't work?
}
[/code]
17년 전