본문 바로가기

c언어7

C언어_구조체 1. 구조체(struct) - 클래스와 객체를 만듬 서로 연관 있는 변수를 묶어서 관리하는 문법, 새롭게 나만의 자료형을 만듬 서로 다른 자료형(이름,성적,평균 등) 을 묶어서 새로운 자료형을 만들자 ※ 배열은 같은 자료형만 저장한다. 새로운게 필요해! 학생별로 박스를 만들자! 구조체 안쓰면 변수 40개를 만들어야함…기본에는 한 변수에 하나만 저장함. name - char* kor - int eng- int ave - double 구조체의 특징 파스칼 표기법만! Student 시작의 첫글자는 대문자 Student s; 스튜던트 자료형이라 하면됨 각각은 구조체의 멤버변수라고 한다 다른데서는 쓸 수 없다 . 자료형은 여러개 만들 수 있다. 구조체도 배열로 만들 수 있다. 💡 구조체는 변수가 아니다. 새로운 .. 2023. 1. 24.
C언어_포인터 1. 포인터(java에서는 레퍼런스) 데이터가 있는 위치(주소)를 통해 제어하는 문법 int a a라는 이름이 기억안나는데 어떻하지??? 주소를 부르자! a 의 주소를 저장하는 특별한변수 이 주소에는 int형 자료가 있을꺼야 포인터 자체가 인트가 아니다 (포인터변수 포인터상수) 주소값을 가진 변수 주소값을 가진 상수 = 배열이름 일반 변수 int a; 변수 : 상수, 한문자 등 데이터를 저장하는것 EX ) 10 (Data value) 무조건 4바이트 포인터 변수 int* p; 데이터가 아닌 주소를 저장하는것 EX ) #12FF7C(주소) 무조건 8바이트(주소는 16자리) java도 8바이트로 동일 #include void main() { int a = 10; int* p; //포인터 변수. 주소를 저장함.. 2023. 1. 24.
C언어_배열 1. 배열 같은 자료형의 변수를 묶어서 저장하는 문법 배열은 통으로 제어하지 못한다. (c에서는) 만들때만 통으로 만들고 그 이후에는 개별단위로 움직인다. int a,b,c; 변수 3개를 만드는것은 따로따로 만들어진다 a⏹️ b⏹️ c⏹️ int aaa[3] 배열의이름 : aaa 배열의길이:3 배열은 3개가 같이 붙어있다. 메모리의 시작은 0이다. (1이 아님) 인덱스 [0] [1] [2] 주소 #1000~1003 #1004~1007 #1008~100b int aaa[층][호] 3개층 5호실은?? int aaa[3][5] 2차원이다 한칸을 배열요소라고 부른다. #include void main() { int a, b, c; a = 10; b = 20; c = 30; printf("%d\\n", a); p.. 2023. 1. 24.
C언어_함수 1. 함수 Fuction : 특정 기능의 코드가 작성된 영역 메인함수안에 기능을 다 쓰면 너무 길고 코드를 다시 보기 힘들다. 장점 메인함수에서 그 영역을 다시 불러서(호출) 재사용 가능 기능별로 코드를 분리해서 써두면 관리가 용이하다. 위치 컴퓨터는 위에서 아래로 읽는다. 로그인 함수가 있다는 걸 읽어야 메인함수에서 호출 할 수 있다. 함수의 프로토타입을 써서 컴퓨터가 읽게 해준다. (메인함수 위에 복사해서 둔다.) 자바는 C든 메인함수가 시작되면 프로그램이 시작되고 중괄호가 끝나면 프로그램이 끝난다. 메인함수에서 사용하지 않으면 의미가 없다. void login() { printf("로그인 기능"); } void main() { } 로그인 공장이 맨 위에 있다해서 실행되는게 아니다. 보고 확인하고 지.. 2023. 1. 23.
C언어_제어문 1. 조건문(특정 조건을 줘야함, 삼항연산자) if문, if else문 if(조건식 (비교연산자)) { 조건이 참일때 실행문(거짓이면 실행문을 건너뛴다.) } if이나 else의 실행문이 2줄 이상이면 {}를 무조건 해야한다. 한줄일때만 {}을 안써도 된다. #include void main() { int age; //나이를 저장하는 변수를 만든다. printf("나이를 입력하세요 : "); scanf_s("%d", &age); if (age >= 20) { //조건이 ture일때 실행할 영역 if (age > 40) //중첩 if문 ,if문 안에 if문이 들어감 { printf("20~40살까지 가입 가능합니다. \n"); } else { printf("\n안녕하세요.\n"); printf("접수대로 .. 2023. 1. 23.
C언어_연산자 연산자 (나머지구하기 엄청 많이씀 % ex)5%3=2) 1. *+-/는 산술연산자 (이항연산자) 단항연산자 마이너스랑 모양이 비슷함 -4 , -(-4) 양수가 된다. 부호연산자라고부름 2. 비교 연산자 부등호(순서 바꾸면 안됨) , = 작거나 같다 , == 같다, ! = 같지 않다 참거짓으로 보여줌 #include void main() { printf("%d",5==5); //true=1 false=0 대입은 ==이다 3. 논리 연산자 && : AND 연산자 (회로도를 분석하기 위해서 만듬) 0=off, 0제외 나머지=on A and B X 0 0 0 0 && 1 0 1 0 0 1 1 1 20 0) && (num2 < 10); result2 = (num2 5); res.. 2023. 1. 23.