본문 바로가기

Programming/C/C++

[C] C언어에서의 포인터 -1강(기초) 안녕하십니까? M1S Secur 입니다. 많은 분들이 C언어를 공부하면서 막히거나 가장 어려워하는곳이 '포인터' 인데요, C언어 전공한지는 꽤 됬지만 기억을 되살려 조금이라도 도움을 드리고자 작성해봅니다. 포인터에서의 변수 일단 기본적인것은 아래를 봐주세요. int num=5;int * ptr;ptr=# 위 코드를 보시면 첫줄에선 정수 5가 저장된 변수 num을 선언했고 두번째줄에선 포인터 변수인 ptr을 선언했습니다. 이해가 빠르신분들은 포인터 변수의 선언인 int * ptr 에서 int * 이 int형 변수의 주소값을 저장하는 포인터 변수의 선언이란것과 ptr이 포인터 변수의 이름이란걸 눈치채셧을겁니다. ( *의 위치는 상관이 없습니다.) 그리고 세번째줄은 num의 주소 값을 변수 ptr에 저.. 더보기
1-C언어란 안녕하세요 M1S Secur입니다 처음으로 강의를 쓰게되는데요 많이 부족한것이 있더라도 잘 봐주시길 바랍니다. 이제부터 C 프로그래밍 강좌를 시작하겠습니다. 일단 C언어를 배우기 전에 C언어가 어떤것인지 알아야겠죠!! C언어란 1971년경 UNIX란 운영체제를 개발하기위해서 Ken Thompson 과 Dennis Ritchie 함께 개발한 언어입니다 여기서 왜 ?! C언어를 배워야하나! 일단 말씀드리자면 저희는 컴퓨터언어인 기계어 즉 101010001이런 기계어를 읽지 못합니다(하지만 읽는 사람도 있다죠!ㅋㅋ)그리고 컴퓨터는 저희의 언어인(한국의 관점에서) 한글을 모릅니다. 우리가 컴퓨터보고 한글로 이거해 저거해 해봤자 컴퓨터는 어떤 명령을 내리는지 모른다는 것이죠 즉 C언어의 역활은저희가 다른나라에가면.. 더보기
[C,C++] 제 2강 scanf란 M1S Secur 입니다.오늘은 scanf에대해 말해드릴까합니다 scanf는 "키보드로부터 정수/문자 입력을 위한 키워드" 입니다. printf가 출력을 한다면 scanf는 그 정반대로 입력을 받는 것입니다. 우선 전형적인 예제를 들어보자면 이런식의 예제를 들수있습니다. 우선 결과를 봅시다. (제가 444를 입력시켰습니다) 그럼 이제 scanf에 대해 설명하도록 할게요 만약 저 예제의 경우 4번 입력을 받게 됩니다. 만약 1 2 3 4라고 입력을 하게 되었다면 n1에는 1n2에는 2n3에는 3n4에는 4가 들어오게됩니다. 조금 이해가 가시나요? 여기서 궁금한게 하나 나옵니다. %d 이게 뭘까요? 그것은 "10진수의 정수의 형태" 를 2글자로 줄인 겁니다. 나중에 이것에 대해서도 가르쳐 드리겠습니다. 글을.. 더보기
제 1강, 출력함수 안녕하세요 M1S Secur 입니다.오늘은 간단하게 C언어로 글자들을 출력해보려고 하는데요^^ 지금부터 시작합니다. #includeint main() {printf("TEAM GGS and CSC");getchar();return 0;} C언어를 접하다보면 많이 접하는 부분입니다.#include 는stdio.h 라는 헤더 파일을 포함한다는 의미입니다^^그리고 int main()이것은 메인함수를 의미합니다수학과 같이 특정값을 입력하면 특정일을 수행하게 하죠 ^^이는 프로그램에서 가장 밑바탕이는 되는 함수라해도 좋습니다~ int main() 뒤에 중괄호 가 존재하는 이유는?간단합니다.메인함수에 포함되는 부분이라는것을 표한하기 위한것이죠 printf("") 이곳은 출력함수 입니다.위에서 "TEAM GGS an.. 더보기
[C++] static_cast 안녕하세요 M1S Secur 입니다 이번 강의는 static_cast에대해 알아보는 시간인데요 static_cast는 C++ 스타일의 자료형 재정의시켜주는 연산자라 보면됩니다 C Style-------------int a = 5;double b = (double)a;return (INT_PTR)TRUE;---------------C++ Style-------------double b = static_cast(a);return static_cast(TRUE)---------------이번예제는 쉬우니 소스해석은넘어가겠습니다일단 static_cast해석해드리겠습니다static_cast는 위에서 설명해드렸듯이 재정의해 대입하는 연산자입니다위 소스를 보듯이 캐스팅을하는거죠 int자료형으로 선언한 변수 a를 do.. 더보기
C++ Tip 안녕하세요 M1S Secur 입니다.이번강의는 c++ Tip입니다간단합니다 C언어에서는 #include 를 하죠C++에서는 #include 입니다c언어는 절차지향, c++은 객체지향입니다iostream를 탐구해보도록합시다.iostream을 분해하자면 input output stream입니다input엔 입력 함수가, output엔 출력함수가 있는거죠input엔 대표적으로 cin함수가, output에는 대표적으로 cout함수가있습니다 표준-> std::cout, std::cin 하지만 사람들은 이런 복잡한걸 싫어하기때문에using namespace std;로 스텐다드를 선언해 cout,cin 이렇게 간단하게 사용할수있게됩니다cout은 Console out의 약자며 콘솔창에 출력을한다는 뜻입니다cin은 Con.. 더보기
C/C++ 템플릿 안녕하세요 M1S Secur 송사리입니다. 이번강의는 템플릿입니다 template T Sub(T a, T b) { return a - b; } int main () { printf("%d", Sub(3, 2)); } 소스를먼저봅시다 일단 템플릿인수 T지정 그리고 Sub함수를만들고 인자에 a,b를 생성합니다 그리고 마이너스로 리턴시킵니다 메인함수가중요하죠 Sub함수에있는 인수 a,b를 int형 지정하고 3값과 2 값을 집어넣음 그리고 리턴값반환을한다 템플릿 이해되시나요? 안에 있는 것을 "템플릿 인수"라고 호칭합니다 이상 템플릿에대해 알아보는 강의였습니다 감사합니다 더보기
1강 C 언어 소개 안녕하세요 M1S Secur 입니다. 1.C언어의 탄생2.컴파일러3.void main() 함수4.변수란 무엇인가. 오늘제가 포스팅 할 내용은 C언어 소개 입니다. 많은내용은 못올리더라도 꾸준히 올리도록 C/C++ 게시판이 제꺼가 되도록< 퍽 퍽 퍽 잡담은 여기까지~사람들과 소통을 하기 위해서는 한국어,중국어,영어 등의 언어가 필요합니다. 그럼 컴퓨터와 대화하기 위해서 필요한 언어는 무엇일까요? 프로그래밍 언어입니다. 프로그래밍 언어중에서 C언어를 포스팅 하도록 하겠습니다. 1.C언어의 탄생C언어는 1972년 미국 벨연구소에서 데니스리치에 의하여 만들어졌습니다.만들어진 목적중 가장 중요한것은 UNIX 라는 운영체제를 만들기 위하여 만들어졌다고 할수있습니다.초기에 UNIX운영체제는 어셈블리 언어로 만들어졌습.. 더보기
G Mail SMTP 서버를 이용해 메일보내기. Team. GGS/NXE 리더 H2R 입니다. (Hacking2Root)이번에는 코드를 이용해서 G Mail SMTP 서버를 통하여 메일을 보내보도록 하겠습니다.#include "stdafx.h" #include #include #include #include #pragma comment(lib, "ws2_32.lib")#define cmailserver "gmail-smtp-in.l.google.com" #define cemailto "TEST@gmail.com" #define cemailfrom "TEST@gmail.com" #define SMTPLog "log.txt" #define cemailsubject "test" #define waittime 30 #define emailmessage "TE.. 더보기
[0] C/C++ 자료형과 연산자. - 2 안녕하세요! M1S Secur 입니다.이번엔 전강의인 "자료와 연산자-1"을 이어서 진행할건데요. 저번시간에는 char[문자형], int[정수형] 에대해서 설명했는데요.전시간과 이어서 설명 하겟습니다. > float[실수형]float란 실수형 변수입니다.이 변수의 특징은 소수부분과 지수부분을 따로 저장합니다.이것은 4바이트로 정보[data]를 저장합니다. 여기서 실수란 간단히 소수라는것을 이야기합니다.어? 그러면 그냥 int 같은 정수형으로도 실수처럼 저장할수 있지 않을까요? 예시를 들어 컴파일을 해보겟습니다.EX > int i; i=3.62;컴파일을 하고 실행을 하게되면 이런식으로 에러가나며 값이 출력되지 않습니다. 그러면 실수형에 정수형처럼 입력해도 값이 정상적으로 출력될까요?예시를 들어 다시 컴파일.. 더보기