블로그 이미지
안녕1999

카테고리

전체 (3067)
자바스크립트 (20)
안드로이드 (14)
WebGL (4)
변비 (17)
정치,경제 (35)
C언어,ARM (162)
컴퓨터(PC, Note Book, 윈.. (41)
전자회로, PCB (27)
유머,안웃긴,GIF,동영상 (118)
국부론60 (71)
모듈(PCB) (3)
건강 (2)
FreeCAD (25)
PADS (43)
퇴직,퇴사,구직,취업 활동 (3)
C# (86)
엑셀 (8)
워드 (0)
LabView (6)
레고 (30)
FPGA (0)
Total
Today
Yesterday

달력

« » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

공지사항

최근에 올라온 글

typedef DWORD WINAPI (*FUNC_GetModuleFileNameExA)(HANDLE hProcess,HMODULE hModule,char *lpFilename,DWORD nSize);



=>  WINAPI도 괄호안에 포함시켜야한다.


typedef DWORD (WINAPI *FUNC_GetModuleFileNameExA)(HANDLE hProcess,HMODULE hModule,char *lpFilename,DWORD nSize);



Posted by 안녕1999
, |

비트필드로 구성한 struct에서, 어느 1비트 데이터 변수의 주소를 얻으려고하니, 아래와 같은 에러가 발생하였다.


error C2104: '&' on bit field ignored



해결방법: 비트필드용 struct를 정의하고, 해당 비트필드 struct의 주소를 얻어서 사용한다.

예)

typedef struct

{

byte buse:1;

byte bPad:1;

byte bPlay:1;

}sBIT_FIELD_A;


typedef struct

{

sBIT_FIELD_A b;

...

}sXXXX;

 

단점 : 비트필드의 크기가 큰 경우 1바이트 이상의 데이터를 처리해야한다.


Posted by 안녕1999
, |

#ifndef GET_X_LPARAM

#define GET_X_LPARAM(lp)  ((int)(short)LOWORD(lp)) 

#define GET_Y_LPARAM(lp)  ((int)(short)HIWORD(lp)) 

#endif

Posted by 안녕1999
, |

..\xxx.h:3:21: error: conflicting declaration of 'long unsigned int xxx()' with 'C' linkage


arm 컴파일중, 확장자가 c인것들을 CPP로 변경하여 발생.

원래대로 확장자를 C로 변경하여, 해결됨.

Posted by 안녕1999
, |

arm-none-eabi-gcc: error: CreateProcess: No such file or directory

위 문제는 gcc가 내부적으로 cc1.exe을 호출하기 때문입니다.

gcc설치당시 설정된 경로 "../lib/gcc/arm-none-eabi/4.9.3/"에서 호출하기때문입니다.


 d:/XXXX/bin/../lib/gcc/arm-none-eabi/4.9.3/cc1.exe -E -lang-asm -quiet -v -I D

:\Source\Lib -I D:\Source\Lib\XXXX -imultilib armv6-m -iprefix d:\XXXX\bin\../

lib/gcc/arm-none-eabi/4.9.3/ -isysroot d:\XXXX\bin\../arm-none-eabi -D__USES_IN

ITFINI__ -D CORTEX_M0 -D USE_STDPERIPH_DRIVER D:\Source\LAN-AUDIO/XXXX/startup_

XXXX.S -mthumb -mcpu=cortex-m0 -g -fworking-directory -O3 -fno-directives-only

-o C:\DOCUME~1\a\LOCALS~1\Temp\ccwt5swb.s 


결론:

arm-none-eabi

bin

lib

Source

※arm-none-eabi, bin, lib 폴더는 Source폴더와 같이 있어야 한다.(변경불가)


Posted by 안녕1999
, |

error LNK2001: unresolved external symbol "char * __cdecl strcpy(char *,char *)" (?strcpy@@YAPADPAD0@Z)


두번째 인자를 (const char*)으로 바꾸면 되지만, 너무 많다.

쉽게 하는 방법은?


그냥, 아래 함수 추가. inline으로 선언하면 좋을듯.

char *strcpy(char *dset,char *src)

{

return strcpy(dset,src);

}

Posted by 안녕1999
, |

error LNK2001: unresolved external symbol "char * __cdecl strcpy(char *,char *)" (?strcpy@@YAPADPAD0@Z)


원형

char *strcpy(
   char *strDestination,
   const char *strSource 
);


문제의 코드

xxx::SetClipText(LPSTR text)

{

...

strcpy(pMem,(const char *)text);//<<--- (const char *)추가

...

}

Posted by 안녕1999
, |

error LNK2001: unresolved external symbol __imp__DialogBoxParamA@20


소스에 아래 내용 추가

#pragma comment(lib, "User32.lib")

Posted by 안녕1999
, |

__inline FILE *fopen(wchar_t *file,wchar_t *mode)

{

return fopenW(file,mode);

}


inline => __inline

Posted by 안녕1999
, |

error C2065: 'WM_MOUSEWHEEL' : undeclared identifier


철자도 맞고, #include "windows.h"도 했는데, 왜이럴까?


미해결...

Posted by 안녕1999
, |

최근에 달린 댓글

글 보관함