반응형

C 59

'errno'가 무슨 뜻인지 어떻게 알죠?

'errno'가 무슨 뜻인지 어떻게 알죠? " " 를 할 execl(...), 나는 그것을 얻었다.errno=2뜻이죠것은은 무엇 ?? ???? 이 를 알 수 있을까요?errno를 사용하여 에러 번호의 판독 가능한 문자열을 취득할 수 있습니다.이 문자열은 에 의해 인쇄된 것과 동일하지만 표준 오류 출력 이외의 오류 메시지를 포맷할 때 유용합니다. 예를 들어 다음과 같습니다. #include #include /* ... */ if(read(fd, buf, 1)==-1) { printf("Oh dear, something went wrong with read()! %s\n", strerror(errno)); } 스레드 바리안트 Linux도 합니다.strerror_r().다음은 에서 얻은 결과입니다.errno ..

source 2022.08.18

시스템 위치: 1바이트!= 8비트?

시스템 위치: 1바이트!= 8비트? 이 질문에는 이미 답변이 있습니다. 8비트 문자 이외의 기능이 있는 플랫폼은 어떤 것입니까? (13개의 답변) 닫힘7년 전. 나는 항상 다음과 같은 문장을 읽는다. 1바이트가 8비트라고 믿지 마세요. 사용하다CHAR_BIT비트와 바이트 간에 변환하기 위한 상수로서 8이 아닌 등오늘날에는 어떤 실생활 시스템이 존재하며, 이것이 사실일까요?(I'm not sure if there are differences between C and C++ regarding this, or if it's actually language agnostic. Please retag if neccessary.)구식 기계에서는 8비트 미만의 코드가 꽤 흔했지만, 지금은 대부분 사용되지 않고 사라졌습..

source 2022.08.18

C에서 복잡한 프로젝트를 어떻게 구조화하면 좋을까요?

C에서 복잡한 프로젝트를 어떻게 구조화하면 좋을까요? 닫혔어. 이 질문은 좀 더 자세히 설명해야 합니다.초점을 맞춥니다.현재 답변을 받고 있지 않습니다. 이 질문을 개선하시겠습니까?이 게시물을 편집하여 하나의 문제에 초점을 맞추도록 질문을 업데이트하십시오. 6년 전에 문을 닫았어요 이 질문을 개선하다 저는 초급 수준의 C 스킬을 조금 가지고 있기 때문에 C에서 다소 복잡한 어플리케이션을 구축하기 위한 사실상의 '표준'이 있는지 알고 싶습니다.GUI 기반도 마찬가지입니다. 자바와 PHP에서는 항상 OO의 패러다임을 사용해 왔는데, C를 배우고 싶기 때문에 어플리케이션 구조가 잘못되지 않을까 걱정됩니다.절차 언어로 모듈화, 디커플링 및 건조함을 가지기 위해 어떤 가이드라인을 따라야 할지 막막합니다. 추천할 ..

source 2022.08.16

C에서 Seg fault를 생성하는 가장 간단한 표준 적합 방법은 무엇입니까?

C에서 Seg fault를 생성하는 가장 간단한 표준 적합 방법은 무엇입니까? 질문이 모든 걸 말해주는 것 같아요.C89부터 C11까지의 대부분의 표준을 다루는 예가 도움이 될 것이다.이런 것도 생각했지만, 그건 그냥 정의되지 않은 행동일 뿐인 것 같아요. #include int main( int argc, char* argv[] ) { const char *s = NULL; printf( "%c\n", s[0] ); return 0; } 편집: 일부 투표가 해명을 요구함에 따라:통상적인 프로그래밍 에러(세그 폴트라고 생각할 수 있는 가장 간단한 프로그램)가 중단되는 것을 보증하고 싶었다.이것은 이 보험에 관심이 없는 최소한의 세그먼트 폴트 질문과는 조금 다릅니다.raise() fault: seg fau..

source 2022.08.16

웹 앱에 C를 사용하지 않는 이유는 무엇입니까?

웹 앱에 C를 사용하지 않는 이유는 무엇입니까? 닫았습니다. 이 질문은의견 기반의현재 답변을 받고 있지 않습니다. 닫힘1년 전. 잠겼습니다. 이 질문과 답변은이 질문은 부적절하지만 역사적 의미가 있기 때문에 잠겨 있습니다.현재 새로운 답변이나 상호작용을 받아들이지 않고 있습니다. 오늘 아침 G-WAN을 만났을 때 몇 개의 다른 웹 서버를 보고 있었는데, 제가 알기로는 C로 되어 있는 웹 서버이며, C로 되어 있는 웹 사이트나 웹 앱을 작성해서 사용해야 합니다.한 가지 분명한 이점은 G-WAN 사이트에서 제시한 바와 같이 속도입니다. 그러나 포럼에서 G-WAN의 크리에이터가 왜 웹 기반 앱에 C를 사용하지 않느냐고 물었더니 어려운 것 말고는 아무것도 생각나지 않는다(어쨌든 저는 C는 초보입니다).PHP, ..

source 2022.08.15

char 배열에 저장된 머신 코드를 호출하려면 어떻게 해야 합니다.

char 배열에 저장된 머신 코드를 호출하려면 어떻게 해야 합니다. 네이티브 기계어 코드를 호출하려고 합니다.지금까지의 정보는 다음과 같습니다(버스 에러가 표시됨). char prog[] = {'\xc3'}; // x86 ret instruction int main() { typedef double (*dfunc)(); dfunc d = (dfunc)(&prog[0]); (*d)(); return 0; } 함수를 올바르게 호출하여 재지침에 도달합니다.그러나 ret 명령을 실행하려고 하면 SIGBUS 오류가 발생합니다.실행이 허가되지 않은 페이지에서 코드를 실행하고 있기 때문입니까? 그럼 내가 여기서 뭘 잘못하고 있는 거지? memprotect를 호출하여 프로그램이 존재하는 페이지를 실행 가능하게 해야 합..

source 2022.08.15

어떻게 sprintf을 사용하여 문자열을 추가할 수 있는?

어떻게 sprintf을 사용하여 문자열을 추가할 수 있는? 나는 가지고 심각한 문제에 부딪혀 있습니다.sprintf. 내 코드 한 토막은 합시다. sprintf(Buffer,"Hello World"); sprintf(Buffer,"Good Morning"); sprintf(Buffer,"Good Afternoon"); . . . 일부 100전력 질주해서.... 이거 전 좋아해,overwritten고 있다. 어떻게 이용을 덮어쓰를 피할 수 있다.sprintf?언젠가 내가 만약을 주printf종래에 나는 모든 선들이 보고 싶다.너가 필요합니다. sprintf(Buffer,"Hello World"); sprintf(Buffer + strlen(Buffer),"Good Morning"); sprintf(Buff..

source 2022.08.15

"for(;)"가 "while(true)"보다 빠릅니까?그렇지 않다면 왜 사람들은 그것을 사용하는가?

"for(;)"가 "while(true)"보다 빠릅니까?그렇지 않다면 왜 사람들은 그것을 사용하는가? for (;;) { //Something to be done repeatedly } 「 」 「 」 。 게 훨씬 더 하지 않을까요while(true)니면면 그런 ?? ??? (다중 프로그래머가 암호 코드에 의존하는 이유와 같이) 조금 더 빠른가? 왜, 그리고 정말 그럴 가치가 있을까요?그렇다면 다음과 같이 정의하면 어떨까요? #define while(true) for(;;) 다음 항목도 참조하십시오.while(1)과 while(2) 중 어느 쪽이 빠릅니까? 더 빠르지 않아요. 정말로 관심이 있는 경우는, 사용의 플랫폼의 어셈블러 출력을 사용해 컴파일 해, 확인해 주세요. 그건 중요하지 않아.이건 중요하지 ..

source 2022.08.15

C의 값 주소 또는 포인터를 인쇄합니다.

C의 값 주소 또는 포인터를 인쇄합니다. 나는 꽤 간단해 보이는 것을 하고 싶다.결과는 나오는데 문제는 결과가 맞는지 알 방법이 없다는 거예요. 저는 C에서 일하고 있는데 포인터가 두 개 있어요. 포인터의 내용을 인쇄하고 싶어요.포인터를 참조 해제하여 값을 가리키는 것이 아니라 포인터가 저장한 주소를 원합니다. 아래 코드를 작성했는데 제가 알고 싶은 것은 맞는지, 만약 틀렸다면 어떻게 수정해야 하는지입니다. /* item one is a parameter and it comes in as: const void* item1 */ const Emp* emp1 = (const Emp*) item1; printf("\n comp1-> emp1 = %p; item1 = %p \n", emp1, item1 ); 이..

source 2022.07.23
반응형