문자열 계산
고양이
2024.03.15
질문 제목 : 질문 내용 : #include stdio.h
int main()
{
char voca[100];
int len=0;
printf(영단어 입력:);
scanf(%s, voca);
while(voca[len] != 0)
len++;
printf(입력한 영단어 길이는 %d\n,len);
return 0;
}
여기서 int len 은 정확히 어떤역할을 하는건가요...?
-
유희 2024-03-15
len은 voca[len]이 0이 아닌 동안 1씩 증가합니다.
voca[len]은 입력받은 문자열인 voca 배열의 len번째의 글자 하나를 말하는데
len이 0부터 하나씩 증가하므로 제일 첫 글자부터 0인지 아닌지 검사합니다.
글자는 아스키코드값을 가지며 0이라는 것은 널문자라고 해서 문자열 배열에서 문자열 바로 뒤에 들어가서 배열에서 문자열이 여기까지라는 걸 뜻합니다.
그러니 배열에서 널문자가 나올때까지 len을 증가시키면 문자열의 길이가 되겠죠.
-
재찬 2024-03-15
이렇게 실행하면 되긴하나요? char형은 선언시 0으로 초기화되나? 아니면 char형의 배열이 0으로 초기화되나?
무튼 님의 질문에 답변은 영단어의 길이만큼 배열에 초기화(값의 대입?정도로 생각) 되는데 len번째까지 초기화 되었다.의 의미에요. 이해되나요?? 저는 제가한말 이해 못할듯....
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2654128 | c언어 간단하게 자판기만들려는데 ㅜㅜ | 유1혹 | 2024-05-08 |
2654074 | 배열에 들어있는값을 포인터에 옮기고 싶어요.. | 소라 | 2024-05-07 |
2654043 | 이차원 배열에 있는 값들 더하기.. | 선아 | 2024-05-07 |
2654011 | c언어 대문자소문자, 소문자대문자 변형하기, | 샤르 | 2024-05-07 |
2653985 | 실수 자료형 표현범위있잖아요 (1) | 패틱 | 2024-05-06 |
2653957 | 뭐가틀린건가요?.. (2) | 볼1매그녀 | 2024-05-06 |
2653934 | malloc을 이용한 출력 (1) | 하예 | 2024-05-06 |
2653906 | 숫자 야구 게임인데요.. (2) | 상큼한캔디 | 2024-05-06 |
2653883 | 구조체 질문이요.. 연결리스트. (1) | 별 | 2024-05-05 |
2653802 | 배열에 저장된 데이터와 원하는 데이터비교하는것좀.. | 리카 | 2024-05-05 |
2653727 | 고수님들 봐주세요~ (2) | 아담 | 2024-05-04 |
2653702 | C언어 의 단계가 어떻게 되나요???????????????? (3) | 길가온 | 2024-05-04 |
2653645 | 저....while인데..이게무슨뜻인지좀.. | 설희 | 2024-05-03 |
2653613 | 성별변수 | 뿡뿡 | 2024-05-03 |
2653584 | 16진수 변환 관련 질문 드립니다. | 매미꽃 | 2024-05-03 |
2653557 | 한글 완성형과 조합형의 전환 | 해지개 | 2024-05-02 |
2653506 | void형 포인터 이해안가요 ㅠㅠ (2) | 뭘봐요 | 2024-05-02 |
2653482 | 패턴매칭에 대한 질문하나 올립니다 | 미투리 | 2024-05-02 |
2653452 | main 함수 매개변수 문의드립니다. (2) | 딥레드 | 2024-05-01 |
2653425 | 간단한 포인터 설명좀 해주세요 ㅠㅠㅠ | 차분나래 | 2024-05-01 |