[Mono-list] Managed equivalent of memset?
frederik.carlier at ugent.be
Tue Feb 20 08:33:05 EST 2007
Thanks for the reply. Maybe my terminology is a bit off -- it should
have been "C# equivalent of memset". The struct is going to be passed to
unmanaged code, but I was wondering how to "prepare" it before passing
it. That is, I need a C# equivalent of the line
memset(m_errbuf,0,sizeof(TidyBuffer)). I tried googling, I tried looking
what the Marshal class has to offer, but yet didn't find any answer.
That's why I tried this list.
So, can anybody offer any insight into how to convert the C++ code below
Antonello Provenzano schreef:
> Managed code is by definition "managed", that means the memory is
> handled by the VirtualMachine: so you can't operate on the memory
> You should try to look for an "unsafe" (if you don't know what
> 'unsafe' means in such context, read the manual...) solution, that
> could be found around somewhere by googling a bit.
> On 2/20/07, Frederik Carlier <frederik.carlier at ugent.be> wrote:
>> As a quick introduction, I'm trying to convert a C++.NET wrapper around
>> HTML Tidy to C#, because of the lack of a C++.NET compiler for Linux.
>> I'm by no means an expert in unmanaged code, but things are going well.
>> I am, however, hitting a problem with a struct. The C++ code that
>> initializes the struct reads as follows:
>> m_errbuf = new TidyBuffer;
>> Re-creating the struct and calling tidySetErrorBuffer is easy enough,
>> but what is the managed equivalent of memset? If I just 'omit' the
>> memset line, I get the following failed assertion:
>> mono: src/buffio.c:184: tidyBufPutByte: Assertion `buf != ((void *)0)'
>> Mono-list maillist - Mono-list at lists.ximian.com
More information about the Mono-list