30/09/2018, 20:34

Cảnh báo khi dùng Typedef

Mọi người cho em hỏi khi em khai báo một cấu trúc với typedef trước struct thì máy cảnh báo "typedef was ignored in this declaration " nghĩa là gì ạ? Nó có nghiêm trọng không ạ ?

Interns viết 22:43 ngày 30/09/2018

Bạn đưa code lên đi để mọi người xem lỗi chỗ nào

Thái Hữu viết 22:44 ngày 30/09/2018
#include<iostream>
using namespace std;
typedef struct item{
	int data1;
	int data2;
};
int main(){
	return 0;
}

Chẳng hạn như thế này thì nó có cảnh báo như trên ạ.

*grab popcorn* viết 22:44 ngày 30/09/2018

Bạn thiếu mất cái tên thay thế rồi ._.
typedef data_type_name alias_name

cescnghia viết 22:35 ngày 30/09/2018

bạn làm như thế này nha:

typedef struct {
      char* name;
      unsigned int age;
} Person ;

int main (void){
    Person me = {} ;

}
Interns viết 22:50 ngày 30/09/2018

Bạn sửa lại như sau là được

#include<iostream>
using namespace std;
typedef struct item //có thể bỏ từ khoá item luôn cũng được
{ 
	int data1;
	int data2;
}alias_item; //alias_item là 1 kiểu dữ liệu giống như int, float, char,...
int main(){
        alias_item item1;                //đúng
        //struct alias_item item1;         sai
        //item item1;                      sai 
        //struct item item1;               đúng 
	return 0;
}
Đông viết 22:43 ngày 30/09/2018

Nếu bạn dùng mỗi item thôi thì bỏ typedef đi ! còn dùng typedef là đổi tên kiểu dữ liệu . VD : typedef int songuyen thì khi bạn khai báo số nào kiểu int thì viết : songuyen a ,nó tương tự int a

Bài liên quan
0