Esempio n. 1
0
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;
  }
Esempio n. 2
0
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");
}