프로그래밍 QnA

jungjury의 이미지

getchar함수로 Ctrl+Z 입력 받을때 이상한 점이...

[code:1]
#include <stdio.h>
#define MAXLINE 1024

char *lineinput( );

int main()
{
char *line;

while ( ( line=lineinput() ) != NULL )
printf("%s\n", line );
}

char *lineinput()
{
char *Buf = (char *) malloc ( MAXLINE );
int ch, i = 0;

while ( ( ch = getchar() ) != '\n' )
{
if ( ch == EOF ) return NULL;

Buf[i++] = ch;

}

Buf[i] = '\0';

return (char *)Buf;

stargt의 이미지

C언어 이거 결과가 예상한거하고 다르네요

#include <stdio.h>

main()
{
      int i = 0, j = 0;
      char a[12] = "book", b[] = "marks";
      
      printf("%s+%s=", a, b);
      while(a[i] != '\0')
            i++;
      while(b[i] != '\0'){
            a[i] = b[j];
            i++;
            j++;
      }
      a[i] = '\0';
      printf("%s\n", a);
}

이렇게 짧게 썼는데요

원하는 결과는

book+marks=bookmarks

leesort의 이미지

connect()함수 질문.

if(connect(g_socket, (struct sockaddr*)&g_serveraddr, sizeof(struct sockaddr)) == SOCKET_ERROR)
        return WSAGetLastError();

이런 코드가 있습니다. 연결하려는 서버가 실행이 되어있으면
connect가 바로 되는데,
서버가 죽어있을때는 connect에서 매우 오랜시간(20여초?)
멈추어있어서 프로세스가 죽은것처럼 보입니다.
이를 해결할 좋은 방법이 없을까요?
ps. windows에서 프로그래밍하고있습니다.

Geniys의 이미지

클래스 이용법이 궁금합니다.

다음과 같은 구문이 있습니다.

namespace Tmp 
{ 
	class a1; 
	class a2; 
	class a3; 

	class other 
	{
		friend class a1; 
	}; 
}

위와 같은 코드일때 class a1; class a2; class a3;가 어떻게 사용되는 것인지 궁금합니다.

kuaaan의 이미지

Raw Socket 프로그래밍과 관련한 두가지 궁금증...

1. Linux에서는 Raw Socket을 사용하여 간편하게 패킷을 보고 쓸수 있습니다. 그렇다면...
libpcap을 사용할때 얻어지는 이득은 무엇이 있죠?
퍼포먼스가 더 좋은가요?
아니면 이식성?
코딩하다가 갑자기 떠오른 궁금증이었습니다.

2. 다음과 같은 코드로 Raw Socket을 생성했습니다.
fd = socket(AF_INET, SOCK_PACKET, htons(ETH_P_IP))
UNP vol1. 707page에 따르면 위와 같이 생성한 소켓에서는 시스템을 지나가는 모든 'IP'패킷이 보인다고 되어있습니다. (If we wanted only IPv4 frames, the call would be blabla~~~)

ohdol의 이미지

C++ 클라이언트에서 웹페이지를 통한 파일업로드

C++ 클라이언트에서 웹페이지를 통한 파일업로드가 가능한가요?

file form 있는 페이지를 file.php
file.php가 submit 하는 페이지를 file_result.php 라고 하면

file_result.php 를 호출하여 파일 업로드가 가능 한지 알고 싶습니다.

또 c/c++ 에서 웹 페이지를 호출할 수 있는 라이브러리 추천도 부탁드려요 ~ :oops:

leo~~~~의 이미지

메모리를 비우려면 어떻게 해야 하나요??

제가 리눅스에서 Qt와 C++로 시리얼 통신 프로그램을 짜고 있는데요

보드에 임베디드 리눅스를 깔고 Qt로 짠 프로그램을 보드에 올리고

PC에서 데이터 송신 프로그램을 돌려서 데이터를 보내는데요

100밀리세컨드(0.01초)에 하나씩이요....

PC에서 보드로 시리얼을 통해 데이터를 보내면 보드에서

선(그래프)을 그리는 프로그램입니다.

근데요 데이터를 약 1200개 정도 보내면 그 다음부터는

선이 그려지질 않아요....

아무리 생각해 봐도 메모리 문제인듯 한데요....

lovejin0309의 이미지

ioremap_nocache()에 대해 질문 드립니다.

디바이스 드라이버를 제작하고 있습니다.

ADV 7171, 7183 비디오 인,디코더 디바이스입니다.

디바이스 드라이버를 열면 다음과 같은 크기의 버퍼를 등록해야 합니다.

out_buffer 1512000 * 4
out_buffer_1 1512000 * 4
out_buffer_2 1512000 * 4

uClinux에서 미완성인채로 제공하는 디바이스 드라이버에서는
kmalloc를 사용하여 버퍼 영역을 확보하려고 되어 있습니다. 하지만 kmalloc를 사용할 경우엔 128kb 까지 밖에 확보가 안 되기 때문에 문제가 있습니다.

이상한건, kmalloc를 사용하여 공간을 확보하면 에러 메세지 없이 사용 가능하다가 조금 지나면 다음과 같은 에러 메시지를 출력하면서 죽어 버리는 겁니다.

kelven의 이미지

PDA에 시리얼(RS-232)을 프로그래밍해보고 싶은데..

일단 PDA폰 종류는 rw6100이고..

OS는 WM2003입니다..

개인 용도로 시리얼 프로그램을 하고 싶어서 그러는데,

어떻게 해야 되는지 전혀 감이 안 잡힙니다..

활용 용도는 시리얼포트만 개방되어 있는 장비에 테스트 목적으로 사용하려 하는데,

제가 검색능력이 안 되는 탓인지 관련자료가 부족해서..

lica619의 이미지

아이테니엄과 제온 EM64T에서의 개발

안녕하십니까? 작년 한해는 x86 CPU의 64bit화가 거세게 진행되었는데요. 한가지 궁금한 점이 있어서 질문드립니다.

제가 알기로는 MS에서는 아이테니엄은 네이티브64bit라고 해서 제온 EM64T하고는 구분을 짓는것 같더군요. 그래서 작년에 EM64T를 지원하는 윈도우가 개발이 된것 같구요.
한가지 궁금한 점이 있는데요.
1) 기존에 IA-32기반으로 돌고 있던 application을 64bit로 마이그레이션을 할 때 과연 컴파일만 다시 하면 되는건지 아니면 application원 소스를 다시 고쳐야 되는건지 알 고싶구요.

페이지

프로그래밍 QnA 구독하기