30/09/2018, 20:35

Thắc mắc về node trong danh sách liến kết đơn

Xin chào cho mình hỏi 1 tí. Tại sao khi mình không gán cho Q=NULL thì nó báo lỗi potentially uninitialized local pointer variable ‘Q’ used. Mình xin cảm ơn

void ThemBatKi(LIST &l,NODE* p,int i)
{
	NODE* Q;//NODE*Q=NULL;
	int t = 1;
	for (NODE* k = l.pHead; k != NULL;k=k->pNext)
	{
		if(t==i)
		{
			p->pNext = k;
			Q->pNext = p;
		}
		Q = k;
		t++;
	}
}
viết 22:36 ngày 30/09/2018

Cái này là một dạng cảnh báo (warning) chứ không phải là lỗi. Trong Visual Studio có một công cụ gọi là SDL checks (security development lifecycle) dùng để đảm bảo code của bạn viết có an toàn không kết hợp với các vấn đề bảo mật rồi cảnh báo tới cho trình biên dịch xem như đây là lỗi. Bạn có thể khắc phục bằng cách khởi tạo cho Q, hoặc thông qua cờ /WX click phải vào project->properties->c/c+±>treat warnings as errors->no(/wx-) (trên VS 2013, các phiên bản khác chắc cũng tương tự )

Bài liên quan
0