Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

C c# ½»»¥ c·µ»Øchar*µÄÎÊÌâ

cдµÄ³ÌÐòÒª·µ»ØÒ»¸öchar*

c#µ÷ÓõÄʱºòÓ¦¸ÃÓÃʲôÀ´½ÓÊÜÄØ  char*µÄ³¤¶Èδ֪
stringbuild?  ÎÒ·µ»ØµÄ³¤¶ÈÓÐ20mb×óÓÒ  ΪʲôÎÒÓÃstringbulid½ÓÊÜÖ»ÓÐ4¸ö×Ô¼º³¤¶È  ¸Ð¾õ¾ÍÊǸöÖ¸ÕëµÄ³¤¶È

---------ÁíÒ»¸öÎÊÌâµÄ·Ö¸îÏß-------------------
ÁíÍâÒ»ÖÖ·½·¨ÊÇ·µ»ØÒ»¸östruct  ½á¹¹ÖаüÀ¨char*ºÍchar*µÄ³¤¶ÈÁ½¸ö±äÁ¿

µ«ÊÇc#½ÓÊսṹµÄʱºò ˵ÊÇÀàÐͲ»Æ¥Åä  ·µ»Ø´íÎó 
δ´¦ÀíMarshalDirectiveException
·½·¨µÄÀàÐÍÇ©ÃûÓë PInvoke ²»¼æÈÝ

-------------------ͬһ¸öÎÊÌâÁíÍâÒ»ÖÖ·½·¨µÄ·Ö¸îÏß-------------------
ÁíÍâÒ»ÖÖ·½·¨ÎÒÓÃintptr½ÓÊÜ
C# code:
public struct CDecodeFileInfo
{
public long len;
public string data;
};

CDecodeFileInfo cdfi = new CDecodeFileInfo();
IntPtr ptr = CReadFile(@"c:\des");
cdfi = (CDecodeFileInfo)Marshal.PtrToStructure(ptr, typeof(CDecodeFileInfo));



·µ»ØµÄ´íÎóÊÇ
δ´¦ÀíAccessViolationException
³¢ÊÔ¶ÁÈ¡»òдÈëÊܱ£»¤µÄÄÚ´æ¡£Õâͨ³£Ö¸Ê¾ÆäËûÄÚ´æÒÑË𻵡£


ÇóÈÎÒâÒ»ÖÖ½â¾ö·½·¨


ÆäʵÕâÁ½¸öÎÊÌâ  ¶¼ÎªÁ˽â¾öͬһ¸öÊÂÇé  ¾ÍÊÇÎÒÔõôµÃµ½c·µ»ØµÄÄǸöchar*
{{


Ïà¹ØÎÊ´ð£º

linux»·¾³ÏÂgethostbynameº¯ÊýÎÊÌâ - C/C++ / CÓïÑÔ

дÁ˸ö²âÊÔ³ÌÐòÈçÏÂ
   
  struct hostent *hp; 
char AlarmDevIP[20];  
  int x2;

hp = gethostbyname("www.google.com");
if (hp)
{ ......

C/C++/MFCȺ - C/C++ / ·Ç¼¼ÊõÇø

´ó¼ÒºÃ£¬ÕâÊÇÒ»¸öÖ÷ÒªÃæÏòc/c++/mfcµÄȺ£¬×î½ü½øÐÐÁËÒ»´Î´óÇåÀí£¬»¶Ó­¸÷λ¸ßÊÖ¼ÓÈ룬ºÃѧ°®ÎʵÄÐÂÊÖ£¬Ò²¿ÉÒÔÉêÇëµÄ£¬ÉêÇë¸ñʽ Ö°Òµ£¨c/c++/mfc ÈÎѡһ»òÕ߶ࣩ ¹¤×÷ÄêÏÞ£¨Ñ§ÉúÖ±½Óд´ó¼¸£©¾ÍÐÐÁË£¬ÈëȺµÄÒªÇó¾ÍÊÇÒª» ......

Çó½Ìc/c++ÓïÑÔÏà¹ØÎÊÌâ - C/C++ / CÓïÑÔ

ÓÐÒ»10*10¾ØÕ󣬳ýÈ¥µÚÒ»¸öµã£¨0£¬0£©ºÍ×îºóÒ»µã£¨9£¬9£©£¬»¹Óа˸öµãΪ1£¬ÆäËû¶¼Îª0£¬ÒªÇóÓöþάÊý×é±íʾ¡£°Ë¸öµãÊÇËæ»úÉú³ÉµÄ£¬±àдÏà¹Ø³ÌÐò±íʾ¾ØÕóËùÓпÉÄÜÇé¿ö¡£
ÕæÐÄÇó½Ì¸÷λ¸ßÊÖ£¬°¥£¡±¾ÈËÌ«²ËÁË£¡ºÇºÇ£¡
......

ajax¶ÁÈ¡ashxÊä³öµÄjsonÊý¾Ý±¨´í - .NET¼¼Êõ / C#

ÎÒÓÃjqueryÎÞË¢ÐÂÉÏ´«Í¼Æ¬ºó·µ»Øjson¸ñʽµÄÊý¾Ý±¨´í
£¨Êµ¼ÊÉÏͼƬÊÇÉÏ´«³É¹¦µÄÁË£¬Ö»ÊÇ·µ»Øjson¸ñʽ×ܶÁ²»µ½£¬×ÜÊDZ¨´í£©
ÎÒµ÷ÊÔÉÏ´«µÄashxÒ³ÈçÏÂ
ÎÞ·¨ÏÔʾ XML Ò³¡£ 
ʹÓà Ñùʽ±íÎÞ·¨²é¿´ XML ÊäÈë¡£Çë¸ü ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ