Tôi mới bắt đầu với C và đã thử một vài ví dụ từ cuốn sách của Ritchie. Tôi đã viết một chương trình nhỏ để hiểu mảng ký tự, nhưng vấp phải một số lỗi, và đã hy vọng cho một số cái nhìn sâu sắc về những gì tôi đã hiểu sai:Người mới bắt đầu lập trình C - Vui lòng giải thích lỗi này
#include <stdio.h>
#define ARRAYSIZE 50
#include <string.h>
main() {
int c,i;
char letter[ARRAYSIZE];
i=0;
while ((c=getchar()) != EOF)
{
letter[i]=c;
i++;
}
letter[i]='\0';
printf("You entered %d characters\n",i);
printf("The word is ");
printf("%s\n",letter);
printf("The length of string is %d",strlen(letter));
printf("Splitting the string into chars..\n");
int j=0;
for (j=0;j++;(j<=strlen(letter)))
printf("The letter is %d\n",letter[j]);
}
Đầu ra là:
$ ./a.out
hello how are youYou entered 17 characters
The word is hello how are you
The length of string is 17Splitting the string into chars..
là gì xảy ra? Tại sao vòng lặp for không đưa ra bất kỳ đầu ra nào?
+1 để đề xuất kiểm tra ràng buộc mảng –
Cũng xin cảm ơn mẹo đó. Tôi sẽ sớm kiểm tra lỗi. Nghĩ rằng tôi sẽ xóa những điều cơ bản. Xem cách tôi đã sai ngay cả trong cú pháp của! :) – Droidzone