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

Delphi µÄ×Ö·û¼°×Ö·û´®[

Delphi µÄ×Ö·û¼°×Ö·û´®[1] - string¡¢AnsiString¡¢WideString¡¢String[n]¡¢ShortString
2008-10-17 14:57:17
//×î³£ÓÃµÄ string
var
  str: string;   {¶¨Òå}
begin
  str := 'ÍòÒ»'; {¸³Öµ}
  ShowMessage(IntToStr(Length(str))); {³¤¶ÈÊÇ: 4}
end;
//³¤×Ö·û´® AnsiString; ÔÚµ±Ç°°æ±¾(2007)ÖеÄĬÈÏ״̬ÏÂ, String ¾ÍÊÇ AnsiString
var
  str: AnsiString;
begin
  str := 'ÍòÒ»';
  ShowMessage(IntToStr(Length(str))); {³¤¶ÈÊÇ: 4}
end;
//¿í×Ö·û´® WideString (ЧÂʲ»¼° AnsiString)
var
  str: WideString;
begin
  str := 'ÍòÒ»';
  ShowMessage(IntToStr(Length(str))); {³¤¶ÈÊÇ: 2}
end;
//¶¨³¤×Ö·û´®
var
  str1: String[6]; {Ö¸¶¨´óС²»Äܳ¬¹ý 255}
  str2: String[100];
begin
  {ÉÙ¸øÁËÒ²»áÕ¼ÄÇЩÄÚ´æ}
  str1 := 'ÍòÒ»';
  ShowMessage(str1);                   {ÍòÒ»}
  ShowMessage(IntToStr(Length(str1))); {4; ÕâÊÇ×Ö·û´®µÄ³¤¶È}
  ShowMessage(IntToStr(SizeOf(str1))); {7; ÕâÊÇÕ¼ÄÚ´æ´óС}
  {¶à¸øÁ˻ᱻ½Ø¶Ï}
  str1 := 'ÍòÒ»µÄ Delphi ²©¿Í';
  ShowMessage(str1);                   {ÍòÒ»µÄ}
  ShowMessage(IntToStr(Length(str1))); {6; ÕâÊÇʵ¼Ê±£´æµÄ×Ö·û´®³¤¶È}
  ShowMessage(IntToStr(SizeOf(str1))); {7; ÕâÊÇÕ¼ÄÚ´æ´óС}
  {ÎÊÌâ: ²»ÊÇÉùÃ÷´óСΪ 6 Âð? Ôõô SizeOf ÊÇ 7 ? }
  {ÒòΪ¶¨³¤×Ö·û´®»á¶à³öÒ»¸öÊ××Ö½ÚÀ´¼ÇÒä×Ö·û´®µÄʵ¼Ê³¤¶È}
  {¾ÙÀý˵Ã÷, Èç¹û¸ø str2 °´Èçϸ³Öµ, ÄÇËüµÄÊ××Ö½Ú(str2[0])¿Ï¶¨´¢´æ×Å×Ö·û 'A'}
  str2 := 'iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii'; {65¸ö}
  ShowMessage(str2[0]);                {A}
  ShowMessage(IntToStr(Ord(str2[0]))); {65; ÕâÊÇ 'A' ÔÚ ASCII ÐòÁÐÖеÄÐòºÅ, ÓõľÍÊÇËü}
  {ÄÇÒÔºó¿ÉÒÔÓà Ord(str2[0]) À´´úÌæ Length ÅжÏ×Ö·û´®µÄ³¤¶ÈÂð? }
&n


Ïà¹ØÎĵµ£º

DelphiÖж¯Ì¬Á´½Ó¿â(DLL)µÄ½¨Á¢ºÍʹÓÃ

¶¯Ì¬Á´½Ó¿âÊÇÒ»¸öÄܹ»±»Ó¦ÓóÌÐòºÍÆäËüµÄDLLµ÷ÓõĹý³ÌºÍº¯ÊýµÄ¼¯ºÏÌå,ËüÀïÃæ°üº¬µÄÊǹ«¹²´úÂë»ò×ÊÔ´¡£ÓÉÓÚDLL´úÂëʹÓÃÁËÄÚ´æ¹²Ïí¼¼Êõ,ÔÚijЩµØ·½windowsÒ²¸øÁËDLLһЩ¸ü¸ßµÄȨÏÞ,Òò¶øDLLÖпÉÒÔʵÏÖһЩһ°ã³ÌÐòËù²»ÄÜʵÏֵŦÄÜ,ÈçʵÏÖwindowsµÄHOOK¡¢ISAPIµÈ¡£Í¬Ê±,DLL»¹Îª²»Í¬ÓïÑÔ¼ä´úÂë¹²ÏíÌṩÁËÒ»Ìõ·½±ãµÄ;¾¶¡£Òò¶øD ......

delphiÖÐregister, pascal, cdecl, stdcall, safecall

×¢£º ʹÓôíÎ󣬻òÕßÔڸüӵĵط½Ã»Óмӣ¬¿ÉÄÜ»á³öÏÖ"privileged instruction"´íÎ󣬻òÕßµØÖ··ÃÎÊ´íÎó¡£
³£¼ûµÄµ÷ÓùßÀýÓÐregister, pascal, cdecl, stdcall, safecall¡£º¯ÊýµÄµ÷ÓùÜÀí¾ö¶¨Á˲ÎÊýÈçºÎ´«µÝ¸ø×Ó¹ý³Ì£¬²¢´Ó¶ÑÕ»ÖÐÍ˳ö£¬ÒÔ¼°¼Ä´æÆ÷ÔÚ²ÎÊý´«µÝÖеÄʹÓ㬴íÎóºÍÒì³£µÄ´¦Àí¡£DelphiÖÐĬÈϵĵ ......

×Ö·û´®¡¢PCharÓë×Ö·ûÊý×éÖ®¼äµÄת»»(delphi)

ÉèÓÐÒÔÏÂÈý¸ö±äÁ¿£º
var
  s:string;
  p:pchar;
  a:array[1..20] of char;
ÄÇôÈýÕßÖ®¼äµÄת»»ÈçÏ£º
1¡¢×Ö·û´®µ½PChar
    p:=PChar(s);
2¡¢PCharµ½×Ö·û´®
    s:=p;
3¡¢PCharµ½×Ö·ûÊý×é
    StrCopy(@a,p);
4¡¢×Ö·ûÊý×éµ½PChar
   ......

delphiÖÐSynchronize

delphiÖÐSynchronizeÕâ¸ö¶«¶«ÓÐʲôÓã¿ÎÒÖªµÀÊÇÏß³Ìͬ²½Ê¹ÓõÄ
ÊÇ·ñÊÇÒ»¸öº¯Êý»ò±äÁ¿£¬µ±Ò»¸öÏß³ÌÔÚʹÓÃʱ£¬Èç¹ûÕâ¸öº¯ÊýʹÓÃÁËSynchronizeÐÞîߵϰ¾Í²»ÔÊÐí±ðÒ»¸öÏß³ÌÀ´µ÷ÓÃÕâ¸öº¯Êý
1Â¥£º±ðµÄÏ̻߳áµÈ´ý¸Ã²Ù×÷Íê³Éºó²ÅÄܼÌÐø
2Â¥£ºÄã˵µÄ»ù±¾ÊÇÕâ¸öÒâ˼¡£ËüµÄÄ¿µÄÊDZÜÃâ¶à¸ö×ÓÏß³Ìͬʱ·ÃÎÊÖ÷Ïß³Ì×ÊÔ´¡£
ʾÀý£º
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ