게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
배열 질문드려요.
게시물ID : programmer_2944짧은주소 복사하기
작성자 : 깽깽이♥
추천 : 0
조회수 : 1007회
댓글수 : 6개
등록시간 : 2014/04/28 13:59:24
배열 1000개짜리에 다섯군데에만 숫자를 넣고 나머지는 널문자로 처리해서
널문자가 아닌 갯수를 세려고 합니다. (실행하면 5)
이렇게 코딩을해서 돌리면 경고가 뜨고 실행은 999 가 되네요..
어디가 잘못되었을까요?
 
#include <stdio.h>
#define MAX 1000
int getSize(int *a)
{
 int i;
 int j=0;
 for(i=0;i<MAX;i++)
 {
  if((a+i)!=NULL) j++;
  
 }
 return j;
}
void main()
{
 int tree[MAX]={0};
 int c;
 *(tree+1)=1;                       // *(tree+(2^0)+0)=1;
 *(tree+3)=2;                       // *(tree+(2^1)+1)=2;
 *(tree+4)=3;                       // *(tree+(2^1)+2)=3;
 *(tree+9)=4;                       // *(tree+(2^2)+5)=4;
 *(tree+20)=5;                     // *(tree+(2^3)+12)=5;
 c=getSize(*tree);                // 트리에 속한 총 노드의 수                 (이부분)
 printf("Tree Size ( # of nodes in the tree) value: %dn",c);
}
 
괄호에 이부분이라 적혀진 부분에 경고가뜨네요..
warning C4047: '함수' : 'int *'의 간접 참조 수준이 'int'과(와) 다릅니다.
warning C4024: 'getSize' : 형식 및 실제 매개 변수 1의 형식이 서로 다릅니다.
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호