2010년 4월 14일 수요일

Do not use sizeof for array parameters

Consider the below program.

#include<stdio.h>
void fun(int arr[])
{
  int i;   
  
  /* sizeof should not be used here to get number
    of elements in array*/
  int arr_size = sizeof(arr)/sizeof(arr[0]); /* incorrect use of siseof*/
  for (i = 0; i < arr_size; i++)
  {
    arr[i] = i;  /*executed only once */
  }
}
  
int main()
{
  int i;
  int arr[4] = {0, 0 ,0, 0};
  fun(arr);
  
  /* use of sizeof is fine here*/
  for(i = 0; i < sizeof(arr)/sizeof(arr[0]); i++)
    printf(" %d " ,arr[i]);
  
  getchar();
  return 0;
}

Output: 0 0 0 0 on a IA-32 machine.

The function fun() receives an array parameter arr[] and tries to find out number of elements in arr[] using sizeof operator.
In C, array parameters are treated as pointers (See http://geeksforgeeks.org/?p=4088 for details). So the expression sizeof(arr)/sizeof(arr[0]) becomes sizeof(int *)/sizeof(int) which results in 1 for IA 32 bit machine (size of int and int * is 4) and the for loop inside fun() is executed only once irrespective of the size of the array.

Therefore, sizeof should not be used to get number of elements in such cases. A separate parameter for array size (or length) should be passed to fun(). So the corrected program is:

 
#include<stdio.h>
void fun(int arr[], size_t arr_size)
{
  int i;
  for (i = 0; i < arr_size; i++)
  {
    arr[i] = i;
  }
}
  
int main()
{
  int i;
  int arr[4] = {0, 0 ,0, 0};
  fun(arr, 4);
  
  for(i = 0; i < sizeof(arr)/sizeof(arr[0]); i++)
    printf(" %d ", arr[i]);
  
  getchar();
  return 0;
}

2010년 4월 10일 토요일

카 틴 숲 사 건

`카틴 숲 사건'은 폴란드인들이 러시아에 대해 가진 원한의 상징 중 하나이다. 오늘 폴란드인들이 즐겨하던 농담 하나가 떠올라 소개한다.

러시아인, 독일인, 폴란드인 세 사람이 함께 비행을 하고 있었다. 비행기가 독일 상공을 날자, 독일인이 갑자기 차고 있던 시계를 풀어 밖으로 던져버린다.
폴란드인: 왜 아까운 시계를 버립니까?
독일인: 아, 우리나라에는 시계가 너무 많아서요.

비행기가 다시 러시아 상공을 날자, 러시아인이 마시고 있던 보드카를 병 채로 밖으로 던져버린다.
독일인: 왜 피 같은 술을 버립니까?
러시안: 아, 우리나라에는 보드카가 너무 많아서요.

비행기가 다시 폴란드 상공을 날자, 폴란드인이 옆에 않아 있던 러시아인을 갑자기 들더니 밖으로 던져버린다.
독일인: 아니, 사람을 밖으로 던져버리다니...
폴란드인: 우리나라에는 러시아인들이 너무 많아서요.

— 해설: 오랫동안 러시아와 소련의 지배를 받은 동유럽에는 러시아인들에 대한 반감들이 상당히 강하다. 그래서 이들에 얽힌 풍자나 농담들이 수없이 많다.

 

http://blog.chojus.com/1684

the army of crime

전쟁범죄(戰爭犯罪)는 국제법에 따라 처벌할 수 있는 위법행위로서, 민간인, 군대, 정부 등 누구든지 전쟁법을 어기는 것을 말한다. 국가 간 분쟁에서 전쟁법을 어기는 것이 전쟁범죄이고 국내 분쟁에서의 전쟁법 위반은 그곳 사법당국의 심판에 맡겨 있다. 핵심을 말하자면 ‘전쟁범죄’는 정부가 기능을 하지 못하거나 국가 혼란에 빠져 있는 곳에서 일어난 가장 심한 범죄에 적용할 수 있는 국제사법의 개념을 나타낸다.

 

침략군과 범죄라고 해야 할 까  일제시대에 악랄한 경사가 나오는 우리나라 영화를 보는 듯 했다.

 

특히, 첫머리에 등장하는 이름들은 너무나 영어단어의 나열이 따라갈 수 없을 정도로 생소하였다.  미국에서 의사하고 있는 넘의 얘기로는 폴란드애들이 이름을 어떻게 발음해야할 지 모르겠다고 툴툴거리더만 정말이지 이건...   Missak Manouchian , Feri Boczov , Henri Krasucki , Olga Bancic

 

영화를 보는 내내 뭉클한 것은 아직 독립을 하지 못한 것 같다는 생각이 들기 때문일까.

2010년 4월 7일 수요일

3월26일 위성적외선사진은...

[한겨레] 한국항공우주연구원이 다목적실용위성 아리랑 2호가 지난 2월 촬영한 북한 평양지역의 위성영상을 최초로 공개했다. 이번에 공개한 아리랑 2호 위성영상은 서울의 잠실지역 영상(2006년 11월)과 5월 1일 경기장(능라도)를 중심으로 한 평양시내 영상으로 다목적실용위성 아리랑 1호와 비교해 볼 때 해상도의 차이가 선명하게 나타나는 영상이다.

2010년 4월 5일 월요일

[FEM]IGES

IGES 를 앤시스에서 import하여 사용할 때 주의 사항

  : 모델링은 앤시스의 메쉬에 맞게 하여야 한다.

    모서리가 아아주 조금이라도 남는 모델은 메쉬가 되지 않는다.

 

    

 날개의 끝단이 원판의 끝단으로 잘리지 않으면 원판이 조금이라도 남게 되는 모델링...

2010년 3월 31일 수요일

플랜피플

8년전에 디지털카메라가 상용으로 나왔을 때 그 웹 방식에 대한 혁명을 예고하는 강의를 한적 있다. 그것은 넷아트라는 개념 설명에서 부터 시작하였으나, 그림의 제작 방식이 바뀌고 그후로  소비하는 방식이 바뀌면서 디지털이라는 것은 디카로 상용화되고 있다고 설명하였다.

 

넷 아트의 특징( 넷아트 개론(1994-1999) by Natalie Bookchin, Alexei Shulgin )

1. 국가와 분야를 넘어선 예술가들의 모임 형성

2. 물적 자본 없는 투자

3. 아이디어 도용의 고려 없는 합작

4. 표현에 앞서는 커뮤니케이션

5. 직접성

6. 비물질성

7. 일시성

8. 행위에 기초를 둔 과정

9. 역사적 결과에 대한 고려나 걱정 없는 활동

10. 전략적 더부살이(기생)
    a. 넷을 최초 기반으로 한 활동

    b. 실재 생활을 네트워크화한 하부구조로 확대
11. 공과 사의 경계 소멸

12. 총체적인 하나
    a. 제작, 출판, 배급, 프로모션, 대화(소통), 소비, 비평의 매체가 되는 인터넷

    b. 예술가, 큐레이터, 펜팔, 관객, 갤러리, 이론가, 예술작품수집가, 미술관의 변형이자 분해

 

이렇게 여러운 특징들 빼고 나의 관심은 아트가 전문제작자와 큐레이터가 분리된 것에서 이제 소비자가 제작자이면서 큐레이터의 역할을 하고 있는 방향에 대한 것이 었다.

 

인상파

19세기 후반 인상파 화가들은 대부분 모든 그림을 밖에 나가 켄버스에 스케치 하였으나 그 작품을 대부분 끝까지 밖에서 그린 것은 아니다. 그들은 카메라로 그 풍경을 찍어와서 실내에서 완성하였던 것이다. 따라서 카메라의 영향이 없었다면 인상파는 탄생하지 못했을 지도 모른다.

그 카메라가 기술의 발전으로 이제 3D를 넘보고 있다. 작년에 3D와 4D의 시장은 폭발적으로 증가하여 기존 극장을 사그리 대체할 것이라고 커피숖에서 얘기하고 다녔던 기억이 있다. 

돈벌이와 기술과 예술이 조화로운 세상이 되어버린 것이다.

 

예측하건데 앞으로 10년내에 플랜피플족들이 상용화될 것이다.  즉, 자기의 삶이 영화적으로 시뮬라시용되어져서 살아가게될 것이다. 많은 부류가 그 나름데로 규정될 것이며, 각 계층은 서로 융화될 수 없는 규격된 삶을 살아 갈 것이다.

그 예상으로 CNN이 뉴스를 소설쓰듯이 만들고 있다는 사실과 우리나라나 미국에서 아이들의 장래를 기획하는 일이 빈번해졌다는 사실에서 찾을 수 있다.

BubbleT

VQ21A1-5G-C8-F

$26.29

24Voltage 2.1A의 SMPS를 사용하면 50W에 대응한다. 개당 2.9W이므로 10개이면 29W가 된다. 따라서 이정도면 40$정도의 SMPS면 될 듯.