void XC::SectionAggregator::alloc_storage_ptrs(void) { free_storage_ptrs(); const size_t order= getOrder(); if(order > maxOrder) { std::cerr << getClassName() << "::" << __FUNCTION__ << "; order too big, need to modify the maxOrder value" << " in SectionAggregator.cpp to: " << order << std::endl; exit(-1); } //theCode= new ResponseId(codeArea, order); Not sharing area anymore // LCPT 19/09/2016 if(order>0) { theCode= new ResponseId(order); def= new Vector(workArea, order); defzero= new Vector(workArea, order); s= new Vector(&workArea[maxOrder], order); ks= new Matrix(&workArea[2*maxOrder], order, order); fs= new Matrix(&workArea[maxOrder*(maxOrder+2)], order, order); check_ptrs(); } else std::cerr << getClassName() << "::" << __FUNCTION__ << "; 0 or negative order; order= " << order << std::endl; }
void test_str_ncpy() { const char *src = "foo"; char dest[80]; char *result, *expected_result; dest[60] = 'X'; check_unsigned_int(sizeof(dest), 80); check_char(dest[60], 'X'); result = str_ncpy(dest, src, sizeof(dest)); check_strs(dest, src, "1"); check_ptrs(result, dest, "2"); check_chars(dest[60], '\0', "should null-out rest of buffer"); expected_result = strncpy(dest, src, sizeof(dest)); check_strs(dest, src, "3"); check_ptrs(result, expected_result, "4"); }