write() 함수에 관한 질문이요~
글쓴이: leo~~~~ / 작성시간: 목, 2005/08/11 - 3:41오후
wirte()함수가요
write(int fd, const void *buf, size_t count);
man 2 write 메뉴얼 보니까 이렇게 되어있더라구요...
저기서 buf는 char형이자나요...
저는 타이머나 loop를 사용해서 저 buf의 값을
계속 바꾸고 싶은데요...
어떻게 해야 하나요....
아니면 int형을 char형으로 바꿀수 있는 방법이라도...
좀더 구체적으로 말씀드리자면..
strcpy( buf, “Hello” );
num = write( xp, buf, (int) strlen( buf ) );
buf[num] = 0;
printf(“%s >=< %d \n”, buf, num );
위 소스의 "Hello"부분 있자나요...
그부분을 계속해서 바꾸려고 하거든요...
숫자로요....
strcpy()이거대신 buf에 숫자 쓸수 있는 함수는 없나요??
답변 부탁드립니다~~
Forums:
[quote]int main (){ int i=0x414243
헛.....설명이라도 좀 해주시지....^^;;
헛.....설명이라도 좀 해주시지....^^;;
윗분의 소스는 일단 원하는 타입으로 선언하고 초기화 하고write함수
윗분의 소스는 일단 원하는 타입으로 선언하고 초기화 하고
write함수를 사용할때 (void *)형으로 케스팅 하라는 말씀이신 것 같습니다.
왜 이렇게 생각하세요??
포인터 변수는 선언 될때 반드시 그 타입이 정해져야 합니다..
그리고 그 타입만 가리킬 수 있죠..
하지만 void형 포인터는 타입이 정해져 있지 않기 때문에 어떤 타임도 가리킬수 있습니다...
buf 변수가 char*로 사용될수 있는 것이지....
꼭 char*는 아닙니다..
무엇을 위해 사는가..
아...그렇군요...ㅋㅋ감사합니다~~~^^
아...그렇군요...ㅋㅋ
감사합니다~~~^^
근데 buf를 int로 한담에다시했는데도...안되네요..ㅡ,.ㅡ;;
근데 buf를 int로 한담에
다시했는데도...안되네요..ㅡ,.ㅡ;;
제가 워낙 초보라서....ㅜ.ㅜ
sprintf 를 사용하세요.즐프하세요..
sprintf 를 사용하세요.
즐프하세요..
[quote]main(){ char buf[1024];
댓글 달기