프로그래밍 QnA

xoduddk123의 이미지

쉘스크립트중 "if !" 는 어떻게 이해하면 되나요???

안녕하세요.

initramfs의 init스크립트를 보고있는데요

if ! 조건 : then 부분을 어떻게 이해해야될지 잘 몰라서 헤매고있습니다.

제가 보고있는 if문은 아래와 같습니다.

if ! mount -t devtmpfs -o mode=0755 udev /dev; then
echo "W: devtmpfs not available, falling back to tmpfs for /dev"
mount -t tmpfs -o mode=0755 udev /dev
[ -e /dev/console ] || mknod -m 0600 /dev/console c 5 1
[ -e /dev/null ] || mknod /dev/null c 1 3
fi

스크립트가 동작하는 정황상 해당 if문 안에있는 내용들은 실행을 안하는거 같은데요

맨위에 있는 if ! mount -t devtmpfs -o mode=0755 udev /dev; then 는 동작하는건지 안하는건지...

faraplay의 이미지

non-block tcp 연결에서 errno 110 connection timed out이 발생하는 이유를 알고 싶습니다.

안녕하세요 구글 검색을 해도 이유를 찾지 못해 글을 남겨 봅니다.. ㅠㅠ
client에서 tcp non-block 모드로 socket을 열고 connection 시도 시에 connection timed out이 발생합니다.
보통 연결이 안되면 errno 111 connection refused (SEVER가 실행이 안되어 있는 경우) 가 출력 되는걸로 아는데 connection timed out이 왜 발생하는 걸까요??
다음 소스는 connection시도이후 EINPROGRESS 를 리턴 받은 이 후 select()로 부분 구현 입니다.

vananamilk의 이미지

gcc는 링킹시 파라메터 체크는 안 하는거 같네요.

개발중에 이상한 현상이 있더라구요. 예를 들어 아래와 같은 코드가 있을 때...

== a.c
#include

extern void test(int a, int b);

int main()
{
test(1, 2);

return 0;
}

== b.c
#include

void test(int a, int b, int c)
{
printf("%d %d %d\n", a, b, c);

return;
}

# gcc -o c a.c b.c
# c
1 2 -1251069960

링킹 과정중에 에러가 날꺼라 예상했는데 안 나네요. obj 파일은 a.c 파일에서 프로토타입이 맞으니
생성된다지만 링킹 과정중에 정의된 함수와 파라메터 수, 타입은 체크를 안하는듯 하네요.
좀 더 테스트 해보니 g++은 에러가 나네요^^

sjun027의 이미지

시리얼 통신 질문입니다. 도와주세요

안녕하세요 rs232 시리얼 통신을 하고 있습니다.

구조체로 보내고 char[]로 받으려고 합니다.

#pragma pack(1)

tydepef struct myStruct{

char temp1;

int temp2;

double temp3;

char temp4;

};

#pragma pack()

이렇게 보내면 char[]로 받아서 myStruct만큼 메모리 복사해서 넣습니다.

int, char는 잘 들어가는데 double은 늘 이상하게 들어가네요..

PC에서 PC로 보내서 endian은 같을테고 구조체 padding도 pack했는데.. 도무지 잘 모르겠습니다..

고수분들의 도움을 좀 부탁드립니다. 감사합니다.

canuyes의 이미지

putty 접속 관련 질문입니다.

안녕하세요 컴퓨터공학과에 재학중인 학생입니다
요즘 php공부를 해보느라고 apm을 설치하여 사용했습니다.
근런데 apm을 설치한 이 후로는 기존에 학교에서 준 계정에 접속하던 putty가 먹통이네요 ㅠㅠ.

지정된 포트로 맞추고 주소를 넣고 실행시키면 로그인 창이 뜨기도 전에
server unexpectedly closed network connection이라는 에러 메시지가 뜹니다.

윈도우 7 사용중에 있구요, 인터넷에서 레지스트리 값 삭제등 여러 방법을 시도해 보았지만
진전이 없어 질문 올립니다.

답변 기다립니다.
좋은 하루 되세요.

p.s. 다른 컴퓨터에서는 접속이 잘 되는데 apm을 설치한 제 노트북에서만 먹통이네요ㅠㅠ

dododosa의 이미지

장치 드라이버에 관한 질문입니다.

안녕하세요. 리눅스 개발을 처음해보는 초짜입니다.

궁금한게 있어서 질문 드립니다..

리눅스는 PNP 기능을 제공을 하는건가요???
USB포트에 마우스나 키보드를 추가 장착 했을때 인식을 하는것을 봐서는 그런것 같은데..
만약에 USB storage의 경우는 직접 마운트 해줘야하는것 같고..

애매하네요;;

장치를 usb port 에 꼳 았을때 hotplug이벤트로 값받아와서 정보를 파싱하고 (udev를 설치를 못하는 상황이라..)
장치가 뭔지.. 그리고 출력되는 값을 컨트롤?? 할 수 있는 방법이 있는지
조심스럽게 여쭈어 봅니다.

vani2의 이미지

복사방지 클래스 상속시

다음과 같이 복사방지 클래스를 구현했습니다 (C++11)

class NonCopyable
{
public :
 
	// 복사생성자
	NonCopyable(const NonCopyable&) = delete;
 
	// 대입연산자
	NonCopyable& operator =(const NonCopyable&) = delete;
 
protected :
 
	//기본생성자
	NonCopyable() = defaulf; // or NonCopyable() {}
 
	// 소멸자
	~NonCopyable() = default; // or ~NonCopyable() {}
};

여기서 궁금한것이 다음과 같이 위 클래스를 상속받아 복사를 방지했다고 칩시다.
그런데 생성자 및 소멸자는 상속되지 않는다고 배웠습니다만, 어떻게 복사방지가 이루어질 수 있는건지 궁금합니다.

gusrbs82의 이미지

mysql foreign key에 관한 질문이요.

안녕하세요. 출석관련 프로그램 데이터베이스를 짜려고 하는데요.

설계도에 foreign key : group_name(table: cm001m, ca001m)

라고 되어있더라고요.

이때

foreign key(group_name) references cm001m(group_name),ca001m(group_name)

on delete cascade on update cascade

써서 했는데 안되더라고요.

중복 으로 할수있는 방법이 따로 있나요???

데이터베이스는 처음이라 잘 모르겠네요. ㅠㅠ

gusrbs82의 이미지

mysql workbench를 설치했는데요.cmd에서 실행이 안되네요.

제목에서처럼 mysql workbench를 설치했는데요.

workbench에서 지원해주는 cmd창에선 잘 되는데

cmd에서

-> mysql -u root -p;

치고 password를 치면 workbench에선 잘 되는게 안되더라고요.

환경변수도 건드려보고 workbench에서 사용자들도 변경, 추가해서 해보기도 하는데

cmd에선 도저히 안돼네요...;;;

왜 이러죠???

gata102의 이미지

C 언어 변수 초기화 관련 질문입니다.

너무 쉬운 질문을 하는 게 아닌지 모르겠네요.
프로그래밍을 정식으로 배운건 아니고... 전공에서 필요하다가 보니... 필요한 부분만 조금 아는 C유저 입니다. ㅡ_ㅡ;;
전 주로 MCU를 이용해 시스템 제어 코드를 많이 짜는데, 범용성을 올리기 위해 프로그램을 수정하고 있습니다.

제가 하고 싶은 기능은 define을 통해 몇몇 파라미터를 바꾸면 컴파일러가 미리 계산해서 변수를 초기화 하는 코드를 만들고 싶습니다.

예)

#define param1 1.2

const float Coeff1 = param1 * param1 ;

... 뭐 이런 형식으로 수정중인데요... define에 길게 늘어서 쓰면 ... 연산시간이 그대로 쭉 늘어지더군요 ㅠ_ㅠ..

1차적인 파라미터 연산은 위처럼 해결되는 데요.. 문제는...

const float Coeff1_s = Coeff1 * Coeff1 ;

페이지

프로그래밍 QnA 구독하기