#include <stdio.h>
main(int argc, char *argv[]) { printf("%s", *argv[1]); }
요렇게 했는데 gcc로 컴파일하고 컴파일 한 명령뒤에 33, afe 등등을 붙이면 세그먼트폴트 에러가 나거든요? 그냥 명령어만 치면 정상적으로 되고요.
#include <stdio.h> main(int argc, char *argv[]) { printf("%s", argv[1]); }
*argv[] 는 이중배열입니다.
---- 자신을 이길 수 있는자는 무슨짓이든 할수있다.. 즉..무서운 넘이란 말이지 ^-_-^ 나? 아직 멀었지 ㅠㅠ
#include <stdio.h> main(int argc, char *argv[]) { printf("%s", *argv[1]); }
위에서 *argv[]란 문자열의 배열을 뜻하는 것입니다. 즉, *argv[], **argv 이렇게 쓸수 있죠...
위의 소스에서 쓰신 *argv[1]이란 것은 argv[1][0]이 가리키는 곳과 같습니다. 즉 문자열이 아닌 한 문자죠..... 그런데 "%s" 를 이용해 찍었으니 오류가 나죠...^^
=================================================== 중요한건 얼마나 아느냐가 아니라 그것에 대한 열정이다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
[code:1]#include <stdio.h>
*argv[] 는 이중배열입니다.
----
자신을 이길 수 있는자는
무슨짓이든 할수있다..
즉..무서운 넘이란 말이지 ^-_-^
나? 아직 멀었지 ㅠㅠ
[code:1]#include <stdio.h>ma
위에서 *argv[]란 문자열의 배열을 뜻하는 것입니다.
즉, *argv[], **argv 이렇게 쓸수 있죠...
위의 소스에서 쓰신 *argv[1]이란 것은 argv[1][0]이 가리키는 곳과 같습니다.
즉 문자열이 아닌 한 문자죠.....
그런데 "%s" 를 이용해 찍었으니 오류가 나죠...^^
===================================================
중요한건 얼마나 아느냐가 아니라 그것에 대한 열정이다.
댓글 달기