Trích:
	
	
		
			
				
					Nguyên văn bởi  handsometran
					 
				 
				Chương trình của bạn sao lạ quá, mảng hinh[]-> không có kích thước. 
Muốn P 
//======================================// 
unsigned long t, i; 
unsigned int hinh[] = 
{ 
    0b11111111, 
    0b10010000, 
    0b10010000, 
    0b11110000, 
}; 
void main()  
{ 
  ANSEL = 0; // CAU HINH NGO RA DIGITAL 
  ANSELH = 0; 
  trisc=0x00; //portc là output 
  portc=0; // xoá portc 
  trisb = 0xff; 
  trisd = 0; 
  portd=0; 
  LOOP: i = 0; 
       for(t = 1; t != 16 ; t = t * 2 )//????? vòng lặp này lạ quá chĩ thấy for(int i =0; i<10; i++)-> vòng lặp này thực hiện 10 lần. 
       { 
       portc = hinh[i]; 
       portd = t; 
       i = i + 1; 
       delay_ms(100); 
       portc = portd = 0; 
       } 
       goto LOOP; 
} 
 
Bạn xem lại ngôn ngữ C có đúng không, và datasheet nữa. 
			
		 | 
	
	
 Thứ nhất mảng hằng số thế này thì không cần phải ghi kích thước tự trình biên dịch nó xử lý.
Thứ hai for(t = 1; t != 16 ; t = t * 2 ) chẳng có gì là sai cả. cái này bác nên xem lại ý nghĩa các trường trong lệnh for. trường thứ hai chỉ là điều kiện có thể (t =1; i != 100;c++) cũng chẳng có gì sai.