본문 바로가기

언어27

배열과 포인터 핵심정리 문자열/숫자열 배열의 길이 char ch[5] 의 길이 = 5 ★char str[] = "abcde" 의 길이 = 6★ 문자열 배열의 요소에 문자가 들어가게 되면 마지막 문자 뒤에 null값이 꼭 들어감 a b c d e null int num[] = {1,2,3,4,5} 의 길이 = 5 정수형 배열이므로 숫자가 들어가고, 마지막 숫자 뒤에 null값이 들어가지 않음 1 2 3 4 5 소수점 자릿수 조절 const double dNum = 1234.56789; printf("%.0f\n", dNum); printf("%.1f\n", dNum); printf("%.2f\n", dNum); printf("%.3f\n", dNum); printf("%.4f\n", dNum); [출력결과] 1235 1234.6.. 2022. 10. 14.
상속 & 생성자 class X{ int i; X(){ i = 10; } void print(){ print(i + ","); } } class Y extends X{ int i = 15; int j = 10; Y(){ j = 20; } void print(){ print(j+","); } void superprint(){ super.print(); } } class Z extends Y{ int k; Z(){ super(); k = 30; } void print(){ print(k+","); } void test(){ print(); super.superprint(); print(super.j+","); println(i); } } Z z = new Z(); z.test(); z()를 실행하기전, z는 상속관계이므로 명.. 2022. 10. 14.
흥달쌤 영상답변 문제 모음 메서드 호출 class Account { int money=100; public void test(int money){ System.out.println(this.money+money); } } public class TestVariable { public static void main(String[] args) { Account a = new Account(); a.test(50); } } --a 라는 인스턴스-- money = 100 (account 클래스에 있는 변수) this = 내가 가지고 있는 것 정답 this.money + money = 100 + 50 = 150 생성자 class Parent { int age = 43; String name = "이홍직"; public Parent() { .. 2022. 10. 14.
포인터 배열 01 ⭐포인터 배열 : 배열의 요소가 포인터(메모리주소)로 이루어진 것 01) char a[3] = {'a','b','c'} a[0] a 100 a[1] b 101 a[2] c 102 a의 주소값 = 100 printf("%s", a) a의 주소값을 받아서 문자열 출력(null문자를 만날때까지 출력) -> abc 02) char *str = "hello"; // 포인터 str 선언하고 char 이므로 hello 들어감, str 그 차제로 따져서 주소값은 100임 h e l l o str의 주소값 = 100 printf("%s", str) -> hello 03) char *student[3] = {"aaa", "bbb", "ccc"}; // 포인터 student 선언하고 student 그 자체로 따져서 주.. 2022. 10. 13.
2차원 배열과 포인터 01 ⭐개념 int a[3][2] = { {1,2}, {3,4}, {5,6} } // {1,2,3,4,5,6} 과 같음 보기 편하라고 이렇게 들 씀.. a[0][0] 1 주소:100 a[0][1] 2 주소:101 a[1][0] 3 주소:102 a[1][1] 4 주소:103 a[2][0] 5 주소:104 a[2][1] 6 주소:105 배열 a의 주소값 : 100 (맨 처음 a[0][0] 따라감) printf("%d", a) 포인터변수 그냥 출력하라하면 주소값 뿌림(가진게 주소값) 따라서, 100 출력 printf("%d", *a) 포인터변수 주소에 있는 값을 출력, 1 (x) 아니다,,저렇게 생각하면 안됨 *a 라고 같은 주소에 있는 a[0][0]의 값 출력하는게 아니라, a[0]을 가르키고 있기 때문에 .. 2022. 10. 13.
[c언어] 배열과 포인터 01 #include int main(void) { int i; int a[] = {10,20,30,40,50,60,70,80,90,100} int *ptr = a+3; for (i=0;i 2022. 10. 13.
[JAVA] static 변수(정적 변수) + 지역변수, 전역변수 1. static 변수 class HouseLee { String lastname = "이"; } public class Sample { public static void main(String[] args) { HouseLee lee1 = new HouseLee(); HouseLee lee2 = new HouseLee(); } } 객체마다 객체변수 lastname을 저장하기 위한 메모리가 별도로 할당된다. HouseLee 클래스의 lastname은 어떤 객체이던지 동일한 값인 "이" 이어야 하는데, 이렇게 항상 값이 변하지 않는 경우라면 static 사용시 메모리의 이점을 얻을 수 있다. class HouseLee { static String lastname = "이"; } public class Sam.. 2022. 9. 23.
변수 자료형 변수 자료형 자료형 long 사용 시 주의 long 자료형을 사용하더라도, 12345678900 은 값 자체가 int로 저장되기 때문에 반드시 마지막에 L(또는 l)을 붙여서 변수에 저장시켜야 함 자료형 float 사용 시 주의 실수는 기본적으로 float 처리함 float 형으로 사용하는 경우 숫자에 F(또는 f) 명시함 => 즉 정수는 무조건 int 형, 실수는 무조건 double 형으로 저장됨 2022. 9. 16.
[C언어] 비트연산자 bit : 2진수 저장단위, 컴퓨터에서 사용할 수 있는 최소단위 byte : 8비트 크기 단위 & 대응되는 비트가 모두 1이면 1을 반환함. (비트 AND 연산) | 대응되는 비트 중에서 하나라도 1이면 1을 반환함. (비트 OR 연산) ^ 대응되는 비트가 서로 다르면 1을 반환함. (비트 XOR 연산) ~ 비트를 1이면 0으로, 0이면 1로 반전시킴. (비트 NOT 연산) 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동시킴. (right shift 연산) 2022. 7. 21.