어떻게 하면 코딩실력이 좋아질까요... 한참동안 여러가지 만지다가.. 프로그래밍 연습을 안했더니 -
배웠던 C마저 갑자기 가물 가물 해지네요... 제목은 포인터를 이용해서 문자열을 받는거지만..

사실 지금 과제를 하던도중이라 - 중간 소스는 다 뺏고, 사실 필요없는 소스도 있찌만. 현재 어떤걸 짜던중 - 긁어왔습니다;;ㅋㅋㅋ

지금 필요없는 변수라던지 그런것이 있어요..

포인터를 이용해서 문자열을 받으신다면 잠깐 참고하셔도 약간은 도움이 되실지도 모릅니다.

전형적인 컴퓨터쟁이님께서 만약 글을 읽고계신다면,약간의 시간이 있으시다면 조언도 감사합니다.

블로그 스킨을 바꾼뒤 syntaxhiglighter를 제대로 안한건지 - 과거에 했던 소스들이 다 깨지네요;; 다 고쳐야겠다. ㅋㅋ
참고로 컴파일 환경은 centos 5.4 gcc 입니다.



저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > C / C++' 카테고리의 다른 글

gotoxy visual studio 2008에서 사용하기  (0) 2010.11.16
C++ MD5 해시 라이브러리  (0) 2010.11.07
PHP 소켓 사용해서 통신하기  (0) 2010.06.19
C언어 포인터 이용해서 문자열 받기,  (6) 2010.04.08
unreferenced local variable waring  (0) 2009.12.22
MFC 전역변수 사용하기  (3) 2009.12.20
윈도우 mfc bzero  (0) 2009.12.09
  1. Favicon of http://navisphere.net BlogIcon 룬룬 2010.04.08 01:09 신고

    malloc 부분이 부자연스럽습니다.
    malloc은 메모리 할당 크기를 받는데요. 보통 sizeof(char) * 글자수 라는 식으로 쓰게 되거든요. char는 변수 타입에 따라 double이나 float, int등으로 변경될때도 있습니다. 그리고 문자열을 입력받기 전까지는 실제 길이가 얼마나 되는지 알 수가 없으니 넉넉하게 512, 1024글자 정도로 미리 할당하고 사용하는 식으로 쓰인답니다.

    • Favicon of http://redeyesofangel.tistory.com BlogIcon Yuika eizt 2010.04.08 02:06 신고

      워드프레스로 블로그 교체하셨네요.ㅎㅎㅎ

      해야할것이 너무 많은것 같아요;;

      input_calc=(char *)malloc(sizeof(char)*1024);

      이런소스를 말씀하신것 맞나요..ㅎㅎ?
      아 .. ㅠㅠ 연습 많이 해야겠다...

      자바도 해야겠고... 마음같아선 다른언어도 하고 싶은데ㅠㅠ

    • Favicon of http://navisphere.net BlogIcon 룬룬 2010.04.08 09:43 신고

      예 맞습니다. ^^
      저렇게 하시면 char를 넣을 수 있는 메모리가 1024개가 할당이 되겠지요?
      문자열은 보통 맨 마지막에 \0가 들어가야 하니 글자는 1021글자를 넣을 수 있다고 보시면 됩니다.
      malloc 후에는 free해주시는거 잊지 마세요~

      아마 C++에 통달하실 때 쯤에는 다른 언어도 두렵지 않으실 겁니다.

    • Favicon of http://redeyesofangel.tistory.com BlogIcon Yuika eizt 2010.04.10 00:06 신고

      이것참 해야할게 너무 많네요..

      시간아ㅠㅠ

  2. Favicon of http://www.adget.co.kr BlogIcon 자유인 2010.04.15 14:23 신고

    프로그래밍은 진짜 몇일 쉬어도 엄청어색해집니다 -_-;;; 그리고 자기가 쓴 코드는 담날 보면 모르겠더라구요 ㅋㅋㅋㅋㅋㅋ

    • Favicon of http://redeyesofangel.tistory.com BlogIcon Yuika eizt 2010.04.16 16:50 신고

      ㅠㅠ.. 아 요즘 이론과목만 배우다보니.. 요즘에 완전 리눅스 홀릭이라 ..

      예전에 배웠던 언어들 다 까먹는것 같아요,..ㅠㅠ

strncpy() 문자열을 지정하는 숫자만큼 복사
원형 : char *strncpy(char *destination, char *source, size_t n);

strcat() 두 문자열을 합치기
원형 : char *strcat(char *str1, char *str2);

strncat()  지정하는 숫자만큼 문자열 합치기;
원형 : char *strncat(char *str1, char *str2, size_t n);


strcmp() 두개의 전체 문자열 비교
원형 : int strcmp(char *str1, char *str2);

strncmp()  지정하는 숫자만큼의 문자까지를 비교
원형 : int strncmp(char *str1, char *str2, size_t n);

strchr() 문자열에서 특정한 문자의 첫번째 위치를 찾는다
원형 : char *strchr(char *str, int ch);

strrchr() 문자열에서 지정한 문자가 마지막으로 나타나는 위치를 검색
원형 : char *strrchr(char (str, int ch);

strcspn() 첫번째 문자열을 검색, 두번째 문자열에서 첫번째로 발견한 문자의 위치를 검색
원형 : size_t strcspn(char *str1, char *str2);



 

저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > C / C++' 카테고리의 다른 글

C언어, 랜덤함수 , 포인터  (2) 2009.06.20
*** glibc detected *** double free or corruption (top): 0x08d34008 ***  (0) 2009.06.10
배열초기화  (0) 2009.06.10
string.h 함수  (0) 2009.06.02
main 함수  (0) 2009.06.02
sprintf  (2) 2009.05.25
scanf , gets  (0) 2009.05.24
http://mwultong.blogspot.com/2007/01/c-printf-printf-to-string.html
http://shinlucky.tistory.com/309


:: 결론은 printf()의 출력결과를 문자열로 저장해야 할때 쓰임..;;





저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > C / C++' 카테고리의 다른 글

배열초기화  (0) 2009.06.10
string.h 함수  (0) 2009.06.02
main 함수  (0) 2009.06.02
sprintf  (2) 2009.05.25
scanf , gets  (0) 2009.05.24
gcc, clear  (0) 2009.05.24
gcc, bzero  (0) 2009.05.23
  1. Favicon of http://shinlucky.tistory.com BlogIcon shinlucky 2009.06.04 22:57 신고

    ㅋ 제 블로그가 링크되어 있네요~ 도움이 되셨으면 다행입니다.

    • Favicon of http://redeyesofangel.tistory.com BlogIcon Yuika eizt 2009.06.07 15:19 신고

      글 감사합니다.ㅋㅋㅋ

      재미있는 정보를 찾다가 shinlucky님 블로그에서 찾았어요;

      sprintf 이거요!!.ㅎㅎ

여러군데서 찾은 결과는

scanf는 빈공백을 마친걸로 생각한다고 합니다. 그래서 공백이 있는 문자열을 넣을떄는 gets를 사용해야 한다고 합니다.

그런데 gets는 보안상의 문제? 오버플러(이건 또..)의 문제가 있어서 fgets를 사용해야 한다나;;

만약 gets를 사용하는데, 입력도 안했는데, 이녀석이 알아서 입력받은것 처럼, 넘어간다면,,

gets(); 이걸 쓰기전에 fflush(stdin); 또는 getchar();를 써서 버퍼를 비워야 한다고 합니다..

fflush(stdin) 하지만 이건 VC 에서 작동하는거라, gcc에서는 작동을 안하다고 하더군요;;


.....C.. 들어가면 갈수록 복잡하네;

저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > C / C++' 카테고리의 다른 글

string.h 함수  (0) 2009.06.02
main 함수  (0) 2009.06.02
sprintf  (2) 2009.05.25
scanf , gets  (0) 2009.05.24
gcc, clear  (0) 2009.05.24
gcc, bzero  (0) 2009.05.23
gcc, waring : warning: incompatible implicit declaration of built-in function  (4) 2009.05.15
1

+ Recent posts

티스토리 툴바