2012-12-09 1 views
2

나는 Arduino를 프로그래밍하고있다. 나는 배열을 사용하기를 원하지만 코드가 내가 배열 초기화하는 데 사용한 것과 동일한 코드를 실행하는 동안 나는 배열의 내용을 변경하려면 :목록을 사용하여 배열 값을 재설정 할 수 있습니까?

나는이 수행 할 수

boolean framebuffer[6][5] = { 
    {0,0,1,0,0}, 
    {0,0,0,1,0}, 
    {0,0,1,0,0}, 
    {0,1,0,0,0}, 
    {1,0,0,0,0}, 
    {1,1,1,1,1} 
    }; 

을 그러나 나는 이것을 할 수 없습니다 :

framebuffer = { 
    {0,0,1,0,0}, 
    {0,0,0,1,0}, 
    {0,0,1,0,0}, 
    {0,1,0,0,0}, 
    {1,0,0,0,0}, 
    {1,1,1,1,1} 
    }; 

이와 같은 배열 내용을 설정할 가능성이 있습니까? 나는 다음과 같이 개별적으로 각 배열 요소를 할당하지 않으 :

framebuffer[0][0] = 0; 

답변

1

memcpy 그들 framebuffer에 다음, 당신이 직접 그렇게 할 수 없어,하지만 당신은 모든 배열은 미리 정의 할 수 있습니다 :

// Put all your preconstructed items in some array..... 
// You'd typically make this a global. 

boolean glyphs[2][6][5] = { 
    { 
     {0,0,1,0,0}, 
     {0,0,0,1,0}, 
     {0,0,1,0,0}, 
     {0,1,0,0,0}, 
     {1,0,0,0,0}, 
     {1,1,1,1,1} 
    }, 
    { 
     {1,1,1,1,1}, 
     {1,0,0,1,1}, 
     {1,0,1,0,1}, 
     {1,1,0,0,1}, 
     {1,0,0,0,1}, 
     {1,1,1,1,1} 
    } 
}; 

// Then whereever you want to change the framebuffer in your code: 
// copy the second into a framebuffer: 
memcpy(framebuffer, glyphs[1], sizeof(boolean)*6*5); 
+0

소리가 좋아, 어떻게해야합니까? – treaki

+0

업데이트 됨 .... 코드 –

+0

덕분에 많은 일을하게 될 것입니다. – treaki

관련 문제