프로그래밍 QnA

jaeung24k의 이미지

bash shell script 작성시 indentation이 안되는 문제..

제목 그대로입니다. 휴가후라 그런지 구글링을 해도 찾지를 못하고 있네요..

bash shell script를 작성하는데 인덴트가 안됩니다..

저의 vimrc를 첨부합니다.

조언해주시면 감사하겠습니다.

set ai
set si
set cindent
set autoindent
set smartindent
set shiftwidth=4
set tabstop=4
set ignorecase
set hlsearch
highlight Normal ctermfg=white ctermbg=black
set background=dark
set nocompatible
set fileencodings=utf-8,euk-kr
set bs=indent,eol,start
set history=1000
set title
set showmatch
set nowrap
set wmnu
 
syntax on
hello4miffy의 이미지

c에서 malloc 리턴할때요

int* dec2bin(int y){ int arr = (int)malloc(sizeof(int)*5); int i; for (i=0; i<5; i++) arr[i]=0; return arr; }

dec2bin 함수의 일부인데요
arr0부터 arr4까지 0으로 모두 초기화한다음에 arr을 리턴했습니다.
하지만 결과는 1070192가 나와요. 왜 00000이 리턴되지 않나요??

jic5760의 이미지

libfreetype의 메모리 문제...?

libfreetype-2.3.5 을 Windows에서 사용중인데... 메모리 문제가 발생합니다.
FT_Load_Char 을 여러번 (수천번) 실행하면 다른 메모리에 영향을 끼치는 것 같습니다. (?)

char *data = new char[1024];
for(...)
FT_Load_Char();
delete[] data;

이런식의 소스가 있는데 for문에서 몇번만 돌면 문제가 생기지 않는데
수천번 이상을 돌리면 문제가 생깁니다...
그런데 이상하게 저 data란 배열에 문제가 생깁니다...
이상..하죠?
delete[] data; 을 수행하면 아래와 같은 오류가 발생합니다.

darkman76의 이미지

msgrcv 에 대해서

제가 msgrcv를 사용해서 큐메시지를 받는데 아래와 같이 받고 있습니다.
nRcvCount = msgrcv(nQueueId,
(struct msgbuf *)pQMsg, QUEUE_LEN_256, pQMsg->mtype, MSG_NOERROR);

Loop함수를 두어서 계속적으로 받고 있고 루프 위에는 signal( SIGTERM, IntCmd_ProcessExit);
시그널을 받아서 프로세스를 관리하는 관리프로세스한테 종료 메시지를 받습니다.
아래와 같이요
signal( SIGTERM, IntCmd_ProcessExit);
IntCmd_MainLoop();

darkman76의 이미지

Accept 에러 2

몇일전 똑같은 문제로 질문 올렸던 사람입니다.
조금 더 틀린게 있어서 다시 올립니다.

accept시 아래와 같은 에러가 계속적으로 발생 되나 클라이언트에서 접속을 요청하면 접속 요청을 제대로 받고 있습니다.
이게 정상인가요?
EINTR 에러가 OS에 따라서 같은 BLOCKING SOKET인데 발생됐다 안됐다 하나요?
이게 정상이라면 그냥 넘어갈려고 하는데 고수님들의 의견은 어떠신지 궁금합니다.

p952973의 이미지

extern 변수 관련 문제입니다.

하나의 헤더에 extern 변수를 선언한 후 두개의 메인에서 해당 extern 값에 접근합니다.

하나의 메인은 extern 값을 설정하고 나머지 하나는 extern값을 주기적으로 같은지 확인하는 내용으로 구현하려 했습니다.

하지만 값 설정은 되는데 그 값을 다른 메인에서 확인하지를 못합니다.

메인이 두개여서 문제가 되는건가요? 아니면 다른 문제가 있는걸까요 조언 부탁드립니다.

좋은 하루 보내세요!

dio8272의 이미지

scanf에 대해서

c언어를 막 배우기 시작한 입문자인데요 책에서 나온 예제에서 궁금한점이 생겨서 질문합니다.

#include

int main(void)
{
char letter;

while(1)
{
printf("소문자를 입력해주세요:");
scanf(" %c",&letter);

if (letter == '0')
break;

if (letter<'a' || letter > 'z')
continue;

letter -= 32

printf("변환된 대문자는 %c입니다.\n",letter);

}

return 0;

}

o12bank1의 이미지

[급질문] 어셈블러 질문입니다 답부탁드려요~

openmsp430 assem code를 보니

.word #llo(2304) - 1.
.word (2304) - 2.

이 두개가 있던데 정확하게 이게 의미 하는게 무엇인가요?

llo 는 찾아보니 32bit expression으로 최하위 word를 나타낸다고 되어 있던데
이의미는 32bit까지 llo(32bit value) 를 넣는데 여기서 word(2byte?)를 추출하는게 맞는지요?

예를 들어

llo('hfe_ff_fc_77) ==> 77을 나타내는것이 맞나요?

저희가 환경을 보니까

compile(msp430-gcc)을 하니까 1번이 나오고 이걸 다시 2번처럼 텍스트로 수정해서 어셈블러(msp430-as)을 해서 object 를 만드는 형식으로 환경이 잡혀 있습니다

부탁드립니다

bshi02의 이미지

복사생성자에 대한 질문

원래 열혈강의 c++교재에는 레퍼런스 타입인 AAA(const AA& i)으로 나와있는데 읽다가 보니까 아래의 앰퍼샌드가 없는 코드가 무한루프에 빠진다고 하는데 다행?하게도 컴파일러가 막아주어서 무한루프에 빠지지 않는다고 하는데...
근데 저는 왜 이 코드가 무한루프에 빠지는지 알고 싶은데요.
왜 무한루프에 빠지나요?
생각해보면 Person obj3(obj2);가 실행되면 Person형의 객체 obj3가 생성되면서 생성자에 obj2객체가 대입되고
생성자 함수에 포함된 "Person(const Person i)호출"이 표시되는데
그 이후 어떻게 무한루프가 되나요?

무한루프가 되려면 cout실행 이전에 생성자에 obj2를 대입할때마다 계속해서 Person 객체가 생성되어서 무한루프가 된다는 이야기인거 같은데
그게 어떻게 가능한가요?

페이지

프로그래밍 QnA 구독하기