row pointer *p