Skip to content

felbsn/CVectorProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CVectorProject

Basic utility types , implement in pure c style

This is a basic approach to create generic vector/list library in pure c. However you noticed that 'pure c' contradicted my file extensions , and yes there is a problem but it is a compiler releated problem.

in gcc has typeof specifier already so you can build *.c files without any problem.

Where as it does not works with msvc compiler. Msvc dont have 'typeof' specifier where as my implement depends on a type specifier and decltype didnt works as i expect. So i figure out static_cas<delctype(x)> as a solution.

Simple Structure

typedef struct
{
int size;
int capacity;
YourDataType * data;
} MyDaTaVector;

all you need to do write your vector data structure. after you can easily use all vector functions in your own defined data type

ex: struct Foo { .. } typedef Foo Foo; // here we need to define our struct as a new type in order to correctly run vectormaker...

CVectorCreateType(Foo , MyFooVector);

MyFooVector myVec = VectorCreate(myVec); OR MyFooVector myVec; VectorInit(myVec);

... then

YourDataType element; /* some process / VectorAppend(vec ,element ) / some process */ VectorSort(vec , YourDataTypeComparator);

About

Basic utility types , implement in pure c style

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published