문자열 배열이 이해가 안되서 그런데
문자 배열하고 문자열 상수하고 뭐가 다른거에요??
그리고 보통 우리가 scanf라는 함수를 사용할때는
변수의 주소(&)에 입력값을 저장하는데
Ex)scanf(%d,&a)
문자 배열은 그냥 변수 이름에다가 저장하던데
이해가 안되더라구요
Ex)scanf(%d,a)
문자 배열하고 문자열 상수하고 뭐가 다른거에요??
그리고 보통 우리가 scanf라는 함수를 사용할때는
변수의 주소(&)에 입력값을 저장하는데
Ex)scanf(%d,&a)
문자 배열은 그냥 변수 이름에다가 저장하던데
이해가 안되더라구요
Ex)scanf(%d,a)
포인터 변수 문법이 병신이라그럼. 이해해주셈 ㅇㅅㅇㅋㅋㅋ
배열은 변수명이 주소값임
왜그런거에요??? 딴건 안그러잖아요 그리고 보통 배열명은 주소값이 아니라 배열의 첫번째 "주소"를 나타내는거 아니였나요?
잘아는데 왜물어봄
아 문자열은 하나하나 주소 위치를 지정해줄 필요 없이 그냥 첫쨔 주소에 문자열을 입력하면 되는거에요?
정확하게 말하면 주소값 맞고 [1]은 대충 위치 말하는거 int면 대충 sex[1]이면 sex주소값에 4더한값
문자열을 입력할때는 걍 첫째 주소에다가 쌸라쌸라 입력하면은 컴퓨터가 알아서 문자 상수들을 하나하나 주소에 넣는 구조인가요?
상수 하나하나를 주소에 넣을필요없지 어차피 연속적으로 있으니까 첫번째 주소만 넣으면 됨 첫글자 주소에 +1 하면 두번재 글짜 나오잖아
저 그럼 이해 안되는게 하나 또있는데, 이 입력한 문자열을 출력할 때 a라는 변수의 배열이 있으면은 printf(%s,a); 처럼 쓰더라구요. 이해가 안되는게 여기서 보통 a는 말 그대로 a의 시작 번지를 나타내는거라 이대로 출력하면은 오류가 뜨는게 정상 아닌가요? 근데 문자 배열에서는 다 출력할 때 딸랑 변수명만 쓰더라구요
%S는 널나올때까지 다출력함
ㅇㅎ 이제야 이해가 되네요. 감사합니다. 알려주셔서 제가 초보라...;; ㅎㅎ
함수 식별자도 주솟값임 ㅇㅅㅇ
문자열을 입력할때는 그냥 함수의 첫째 주소값에 입력하면은 되는건가요? 그럼 알아서 연속적으로 문자 상수들이 저장이 되나요?
리터럴부터 다시 공부 - dc App