Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 7 của 7
  1. #1

    Viết hoa chuỗi bằng con trỏ báo lỗi only allowed in C99 mode

    Mình đang học phần con trỏ theo tut của a langman. Khi gõ chạy thử bài đổi chuỗi thành viết hoa và đảo ngược chuỗi thì báo lỗi " 'for' loop initial declarations are only allowed in C99 mode " . Các bạn chỉ cho mình lý do tại sao với . Mình compile bằng Code:Blocks . Đây là đoạn code .

    Mã:
    #include<stdio.h>#include<conio.h>#include<ctype.h>    int main(){    char xau[200];    printf("Nhap xau: ");    scanf("%[a-zA-Z]",xau);     printf("Viet hoa: ");    for(char *p=xau;*p!=NULL;p++)        printf("%c",toupper(*p));     printf("
    Dao nguoc xau: ");    for(char *p=xau + strlen(xau)-1;p>=xau;p--)        printf("%s",*p);     return 0;}

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Đặt char* p lên đầu hàm main.

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi pkthanh92
    Đặt char* p lên đầu hàm main.
    Ừh . Mình tưởng viết thế này char *p nhìn đẹp hơn . Sao lúc trưa mình thử như thế không được nhỉ :|. Tks bn.

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    ban sua cho

    Mã:
     printf("%s",*p);  // thanh printf("%c",*p);

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi llvllr_supermaric
    ban sua cho

    Mã:
     printf("%s",*p);  // thanh printf("%c",*p);
    Hỳ thanks bạn . Quên mình không sửa , chỗ đấy lúc post lên mình sửa rồi.

  6. #6
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi ToNy_
    Ừh . Mình tưởng viết thế này char *p nhìn đẹp hơn . Sao lúc trưa mình thử như thế không được nhỉ :|. Tks bn.
    Lý do thì ngay đoạn báo lỗi đã ghi đấy.
    Hoặc là sửa như mọi người đã hướng dẫn, hoặc là biên dịch với mode c99 (trong gcc thì thêm -std=gnu99 hoặc -std=c99 vào tùy chọn biên dịch).

  7. #7
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi ToNy_
    Ừh . Mình tưởng viết thế này char *p nhìn đẹp hơn . Sao lúc trưa mình thử như thế không được nhỉ :|. Tks bn.
    Bạn khai báo biến tự do như vậy thì ở C nó ko cho phép.
    Muốn tự do kiểu đấy thì bạn phải xài trên C++ mới đặng [IMG]images/smilies/biggrin.png[/IMG]

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •