안녕하세요? 레조입니다.
C++Builder 콘솔에서 아래의 코드를 넣었는데 이상이 없었습니다.
제가 이상없이 컴파일한 코드입니다.(C++ type Console)
//---------------------------------------------------------------------------
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
char rambo[] = "abcde";
void *ma_dang4;
ma_dang4 = rambo;
(((long int *)ma_dang4)++);
getch();
return 0;
}
//---------------------------------------------------------------------------
ps.
그런데 한가지 의심되는게 있어서 바꿔서 컴파일 했더니 비슷한 오류가 나네요.
컴파일 설정을 Ansi로 했더니... 그래서 조금 수정해 봤습니다.
//---------------------------------------------------------------------------
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
char rambo[] = "abcde";
void *ma_dang4;
long int *temp;
ma_dang4 = rambo;
temp = ((long int *)ma_dang4);
temp++;
getch();
return 0;
}
//---------------------------------------------------------------------------
Borland 컴파일러에서는 되는데 Ansi에서는 오류가 나네요.
위치는
Projects->Options->Advanced Complier->Language Compliance
여기시 Borland를 Ansi로 변경해 보면 비슷한 에러가 나더군요.
이현수 님이 쓰신 글 :
: char rambo[] = "abcde";
: void *ma_dang4;
:
:
: ma_dang4 = rambo;
: (((long int *)ma_dang4)++);
:
: 프로그램이 대충이런데...
:
: 컴팔하면 이론 에러가 나염.
: error C2105: '++' needs l-value
:
: 왜 그런지점 알려 주세염..
:
|