Changes in / [d6fb3c7:5e8d732]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/user/user.tex
rd6fb3c7 r5e8d732 11 11 %% Created On : Wed Apr 6 14:53:29 2016 12 12 %% Last Modified By : Peter A. Buhr 13 %% Last Modified On : Tue May 30 11:45:46 201714 %% Update Count : 20 9813 %% Last Modified On : Tue May 30 09:08:16 2017 14 %% Update Count : 2072 15 15 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 16 16 … … 5164 5164 \Celeven prescribes the following standard header-files~\cite[\S~7.1.2]{C11} and \CFA adds to this list: 5165 5165 \begin{quote2} 5166 \lstset{deletekeywords={float} }5166 \lstset{deletekeywords={float},deletekeywords=[2]{signal}} 5167 5167 \begin{tabular}{@{}llll|l@{}} 5168 5168 \multicolumn{4}{c|}{C11} & \multicolumn{1}{c}{\CFA} \\ … … 5238 5238 5239 5239 The storage-management routines extend their C equivalents by overloading, alternate names, providing shallow type-safety, and removing the need to specify the allocation size for non-array types. 5240 5241 Storage management provides the following capabilities:5242 \begin{description}5243 \item[fill]5244 after allocation the storage is or is not filled with a specified character.5245 \item[resize]5246 an existing allocation is decreased or increased in size.5247 In either case, new storage may or may not be allocated and, if there is a new allocation, as much data from the existing allocation is copied.5248 For an increase in storage size, new storage after the copied data may or may not be filled.5249 \item[alignment]5250 an allocation starts on a specified memory boundary, e.g., an address multiple of 64 or 128 for cache-line purposes.5251 \item[array]5252 the allocation size is scaled to the specified number of array elements.5253 An array may or not be filled, resized, or aligned.5254 \end{description}5255 5256 The following table show the allocation routines supporting different combinations of storage-management capabilities:5257 5240 \begin{center} 5258 5241 \begin{tabular}{@{}r|l|l|l|l@{}} … … 5269 5252 \end{tabular} 5270 5253 \end{center} 5271 %When ©amalloc© resizes and fills, the space after the copied data from the source is set to the fill character.5254 When ©amalloc© resizes and fills, the space after the copied data from the source is set to the fill character. 5272 5255 It is impossible to resize with alignment because the underlying ©realloc© allocates storage if more space is needed, and it does not honour alignment from the original allocation. 5273 5256 … … 5355 5338 \begin{cfa}[aboveskip=0pt,belowskip=0pt] 5356 5339 forall( otype T | { int ?<?( T, T ); } ) §\C{// location}§ 5357 T * bsearch( T key, const T * arr, size_t dim );§\indexc{bsearch}§5340 T * bsearch( T key, const T * arr, size_t dimension );§\indexc{bsearch}§ 5358 5341 5359 5342 forall( otype T | { int ?<?( T, T ); } ) §\C{// position}§ 5360 unsigned int bsearch( T key, const T * arr, size_t dim );5343 unsigned int bsearch( T key, const T * arr, size_t dimension ); 5361 5344 5362 5345 forall( otype T | { int ?<?( T, T ); } ) 5363 void qsort( const T * arr, size_t dim );§\indexc{qsort}§5346 void qsort( const T * arr, size_t dimension );§\indexc{qsort}§ 5364 5347 \end{cfa} 5365 5348
Note: See TracChangeset
for help on using the changeset viewer.