Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : c

×Ö·û´®µÄÁ½ÖÖ²»Í¬·ç¸ñ: C++·ç¸ñºÍC·ç¸ñ

Õâ¸öÌá·¨Óеã¹ÖÒ죬µ«»¹Êdz£³£³öÏÖ:
char *p = "abcd";
ºÍ
string str = "abcdefg";
µÚÒ»¸ö½Ð×öC·ç¸ñµÄ×Ö·û´®£¬Ô­ÒòÊÇÓÐnull×÷Ϊ½áβ; µÚ¶þ¸öΪC++·ç¸ñµÄ, ²»ÊÇÒÔnull½áβ.
ʵÖÊÉÏ: C·ç¸ñµÄ×Ö·û´®ÊÇ:
char[] pArr = {'a', 'b', 'c', 'd', '\0'};
ÕâÑù¾ö¶¨ÁË´¦Àí·½Ê½µÄ²»Í¬ ......

×Ö·û´®µÄÁ½ÖÖ²»Í¬·ç¸ñ: C++·ç¸ñºÍC·ç¸ñ

Õâ¸öÌá·¨Óеã¹ÖÒ죬µ«»¹Êdz£³£³öÏÖ:
char *p = "abcd";
ºÍ
string str = "abcdefg";
µÚÒ»¸ö½Ð×öC·ç¸ñµÄ×Ö·û´®£¬Ô­ÒòÊÇÓÐnull×÷Ϊ½áβ; µÚ¶þ¸öΪC++·ç¸ñµÄ, ²»ÊÇÒÔnull½áβ.
ʵÖÊÉÏ: C·ç¸ñµÄ×Ö·û´®ÊÇ:
char[] pArr = {'a', 'b', 'c', 'd', '\0'};
ÕâÑù¾ö¶¨ÁË´¦Àí·½Ê½µÄ²»Í¬ ......

C\C++ÖÐÈ«¾Ö±äÁ¿ºÍÈ«¾ÖÎļþµÄ·ÃÎÊ×÷ÓÃÓò

externÊÇC/C++ÓïÑÔÖбíÃ÷º¯ÊýºÍÈ«¾Ö±äÁ¿×÷Ó÷¶Î§£¨¿É¼ûÐÔ£©µÄ¹Ø¼ü×Ö.
Ëü¸æËß±àÒëÆ÷£¬ÆäÉùÃ÷µÄº¯ÊýºÍ±äÁ¿¿ÉÒÔÔÚ±¾Ä£¿é»òÆäËüÄ£¿éÖÐʹÓá£
1¡£¶ÔÓÚextern±äÁ¿À´Ëµ£¬½ö½öÊÇÒ»¸ö±äÁ¿µÄÉùÃ÷£¬Æä²¢²»ÊÇÔÚ¶¨Òå·ÖÅäÄÚ´æ¿Õ¼ä¡£Èç¹û¸Ã±äÁ¿¶¨Òå¶à´Î£¬»áÓÐÁ¬½Ó´íÎó
2¡£Í¨³££¬ÔÚÄ£¿éµÄÍ·ÎļþÖжԱ¾Ä£¿éÌṩ¸øÆäËüÄ£¿éÒýÓõĺ¯ÊýºÍÈ«¾Ö±äÁ¿ÒԹؼü×ÖexternÉùÃ÷¡£Ò²¾ÍÊÇ˵cÎļþÀïÃæ¶¨Ò壬Èç¹û¸Ãº¯Êý»òÕß±äÁ¿Ó뿪·Å¸øÍâÃæ£¬ÔòÔÚhÎļþÖÐÓÃextern¼ÓÒÔÉùÃ÷¡£ËùÒÔÍⲿÎļþÖ»ÓÃinclude¸ÃhÎļþ¾Í¿ÉÒÔÁË¡£¶øÇÒ±àÒë½×¶Î£¬ÍâÃæÊÇÕÒ²»µ½¸Ãº¯ÊýµÄ£¬µ«ÊDz»±¨´í¡£link½×¶Î»á´Ó¶¨ÒåÄ£¿éÉú³ÉµÄÄ¿±ê´úÂëÖÐÕÒµ½´Ëº¯Êý¡£
3¡£Óëextern¶ÔÓ¦µÄ¹Ø¼ü×ÖÊÇstatic£¬±»ËüÐÞÊεÄÈ«¾Ö±äÁ¿ºÍº¯ÊýÖ»ÄÜÔÚ±¾Ä£¿éÖÐʹÓá£
ºóÃæ×ªÔØ£¬ÔĶÁÖС£¡£¡£¡£¡£¡£¡£
±»extern “C”ÐÞÊεıäÁ¿ºÍº¯ÊýÊǰ´ÕÕCÓïÑÔ·½Ê½±àÒëºÍÁ¬½ÓµÄ£»
δ¼Óextern “C”ÉùÃ÷ʱµÄ±àÒ뷽ʽ¡¡¡¡Ê×ÏÈ¿´¿´C++ÖжÔÀàËÆCµÄº¯ÊýÊÇÔõÑù±àÒëµÄ¡£
×÷ΪһÖÖÃæÏò¶ÔÏóµÄÓïÑÔ£¬C++Ö§³Öº¯ÊýÖØÔØ£¬¶ø¹ý³ÌʽÓïÑÔCÔò²»Ö§³Ö¡£º¯Êý±»C++±àÒëºóÔÚ·ûºÅ¿âÖеÄÃû×ÖÓëCÓïÑԵIJ»Í¬¡£ÀýÈ磬¼ÙÉèij¸öº¯ÊýµÄÔ­ÐÍΪ£º
void foo( int x, int y );
¸Ãº¯Êý±»C±àÒëÆ÷±à ......

C\C++ÖÐÈ«¾Ö±äÁ¿ºÍÈ«¾ÖÎļþµÄ·ÃÎÊ×÷ÓÃÓò

externÊÇC/C++ÓïÑÔÖбíÃ÷º¯ÊýºÍÈ«¾Ö±äÁ¿×÷Ó÷¶Î§£¨¿É¼ûÐÔ£©µÄ¹Ø¼ü×Ö.
Ëü¸æËß±àÒëÆ÷£¬ÆäÉùÃ÷µÄº¯ÊýºÍ±äÁ¿¿ÉÒÔÔÚ±¾Ä£¿é»òÆäËüÄ£¿éÖÐʹÓá£
1¡£¶ÔÓÚextern±äÁ¿À´Ëµ£¬½ö½öÊÇÒ»¸ö±äÁ¿µÄÉùÃ÷£¬Æä²¢²»ÊÇÔÚ¶¨Òå·ÖÅäÄÚ´æ¿Õ¼ä¡£Èç¹û¸Ã±äÁ¿¶¨Òå¶à´Î£¬»áÓÐÁ¬½Ó´íÎó
2¡£Í¨³££¬ÔÚÄ£¿éµÄÍ·ÎļþÖжԱ¾Ä£¿éÌṩ¸øÆäËüÄ£¿éÒýÓõĺ¯ÊýºÍÈ«¾Ö±äÁ¿ÒԹؼü×ÖexternÉùÃ÷¡£Ò²¾ÍÊÇ˵cÎļþÀïÃæ¶¨Ò壬Èç¹û¸Ãº¯Êý»òÕß±äÁ¿Ó뿪·Å¸øÍâÃæ£¬ÔòÔÚhÎļþÖÐÓÃextern¼ÓÒÔÉùÃ÷¡£ËùÒÔÍⲿÎļþÖ»ÓÃinclude¸ÃhÎļþ¾Í¿ÉÒÔÁË¡£¶øÇÒ±àÒë½×¶Î£¬ÍâÃæÊÇÕÒ²»µ½¸Ãº¯ÊýµÄ£¬µ«ÊDz»±¨´í¡£link½×¶Î»á´Ó¶¨ÒåÄ£¿éÉú³ÉµÄÄ¿±ê´úÂëÖÐÕÒµ½´Ëº¯Êý¡£
3¡£Óëextern¶ÔÓ¦µÄ¹Ø¼ü×ÖÊÇstatic£¬±»ËüÐÞÊεÄÈ«¾Ö±äÁ¿ºÍº¯ÊýÖ»ÄÜÔÚ±¾Ä£¿éÖÐʹÓá£
ºóÃæ×ªÔØ£¬ÔĶÁÖС£¡£¡£¡£¡£¡£¡£
±»extern “C”ÐÞÊεıäÁ¿ºÍº¯ÊýÊǰ´ÕÕCÓïÑÔ·½Ê½±àÒëºÍÁ¬½ÓµÄ£»
δ¼Óextern “C”ÉùÃ÷ʱµÄ±àÒ뷽ʽ¡¡¡¡Ê×ÏÈ¿´¿´C++ÖжÔÀàËÆCµÄº¯ÊýÊÇÔõÑù±àÒëµÄ¡£
×÷ΪһÖÖÃæÏò¶ÔÏóµÄÓïÑÔ£¬C++Ö§³Öº¯ÊýÖØÔØ£¬¶ø¹ý³ÌʽÓïÑÔCÔò²»Ö§³Ö¡£º¯Êý±»C++±àÒëºóÔÚ·ûºÅ¿âÖеÄÃû×ÖÓëCÓïÑԵIJ»Í¬¡£ÀýÈ磬¼ÙÉèij¸öº¯ÊýµÄÔ­ÐÍΪ£º
void foo( int x, int y );
¸Ãº¯Êý±»C±àÒëÆ÷±à ......

C/C++ ±ÊÊÔ¡¢ÃæÊÔÌâÄ¿´ó»ã×Ü(1)

һλͬѧÕûÀíµÄ³£¼û±ÊÊÔ/ÃæÊÔÌâÄ¿£¬´ð°¸½ö¹©²Î¿¼£¬²»´ú±í±¾È˹۵㡣
Õâ¸ö¶«Î÷ÓÐЩ²Î¿¼¼ÛÖµ,ºÍͬѧÌÖÂÛһϷ¢ÏÖ»¹ÊÇÓÐЩ´íÎó,
1£®ÒÑÖªstrcpyº¯ÊýµÄÔ­ÐÍÊÇ£º
char * strcpy(char * strDest,const char * strSrc);
1.²»µ÷Óÿ⺯Êý£¬ÊµÏÖstrcpyº¯Êý¡£
2.½âÊÍΪʲôҪ·µ»Øchar *¡£
½â˵£º
1.strcpyµÄʵÏÖ´úÂë
char * strcpy(char * strDest,const char * strSrc)
{
if ((strDest==NULL)||(strSrc==NULL)) //[1]
throw "Invalid argument(s)"; //[2]
char * strDestCopy=strDest; //[3]
while ((*strDest++=*strSrc++)!='\0'); //[4]
return strDestCopy;
}
´íÎóµÄ×ö·¨£º
[1]
(A)²»¼ì²éÖ¸ÕëµÄÓÐЧÐÔ£¬ËµÃ÷´ðÌâÕß²»×¢ÖØ´úÂëµÄ½¡×³ÐÔ¡£
(B)¼ì²éÖ¸ÕëµÄÓÐЧÐÔʱʹÓÃ((!strDest)||(!strSrc))»ò(!(strDest&&strSrc))£¬ËµÃ÷´ðÌâÕß¶ÔCÓïÑÔÖÐÀàÐ͵ÄÒþʽת»»Ã»ÓÐÉî¿ÌÈÏʶ¡£ÔÚ±¾ÀýÖÐchar *ת»»Îªbool¼´ÊÇÀàÐÍÒþʽת»»£¬ÕâÖÖ¹¦ÄÜËäÈ»Áé»î£¬µ«¸ü¶àµÄÊǵ¼Ö³ö´í¸ÅÂÊÔö´óºÍά»¤³É±¾Éý¸ß¡£ËùÒÔC++רÃÅÔö¼ÓÁËbool¡¢true¡¢falseÈý¸ö¹Ø¼ü×ÖÒÔÌṩ¸ü°²È«µÄÌõ¼þ±í´ïʽ¡£
(C)¼ì²éÖ¸ÕëµÄÓÐЧÐÔʱʹÓÃ((strDest==0)||(strSrc==0))£¬ËµÃ÷´ðÌâÕß²»ÖªµÀʹÓó£Á¿µÄºÃ´¦¡£Ö±½ÓʹÓÃ×Ö ......

C/C++ ±ÊÊÔ¡¢ÃæÊÔÌâÄ¿´ó»ã×Ü(1)

һλͬѧÕûÀíµÄ³£¼û±ÊÊÔ/ÃæÊÔÌâÄ¿£¬´ð°¸½ö¹©²Î¿¼£¬²»´ú±í±¾È˹۵㡣
Õâ¸ö¶«Î÷ÓÐЩ²Î¿¼¼ÛÖµ,ºÍͬѧÌÖÂÛһϷ¢ÏÖ»¹ÊÇÓÐЩ´íÎó,
1£®ÒÑÖªstrcpyº¯ÊýµÄÔ­ÐÍÊÇ£º
char * strcpy(char * strDest,const char * strSrc);
1.²»µ÷Óÿ⺯Êý£¬ÊµÏÖstrcpyº¯Êý¡£
2.½âÊÍΪʲôҪ·µ»Øchar *¡£
½â˵£º
1.strcpyµÄʵÏÖ´úÂë
char * strcpy(char * strDest,const char * strSrc)
{
if ((strDest==NULL)||(strSrc==NULL)) //[1]
throw "Invalid argument(s)"; //[2]
char * strDestCopy=strDest; //[3]
while ((*strDest++=*strSrc++)!='\0'); //[4]
return strDestCopy;
}
´íÎóµÄ×ö·¨£º
[1]
(A)²»¼ì²éÖ¸ÕëµÄÓÐЧÐÔ£¬ËµÃ÷´ðÌâÕß²»×¢ÖØ´úÂëµÄ½¡×³ÐÔ¡£
(B)¼ì²éÖ¸ÕëµÄÓÐЧÐÔʱʹÓÃ((!strDest)||(!strSrc))»ò(!(strDest&&strSrc))£¬ËµÃ÷´ðÌâÕß¶ÔCÓïÑÔÖÐÀàÐ͵ÄÒþʽת»»Ã»ÓÐÉî¿ÌÈÏʶ¡£ÔÚ±¾ÀýÖÐchar *ת»»Îªbool¼´ÊÇÀàÐÍÒþʽת»»£¬ÕâÖÖ¹¦ÄÜËäÈ»Áé»î£¬µ«¸ü¶àµÄÊǵ¼Ö³ö´í¸ÅÂÊÔö´óºÍά»¤³É±¾Éý¸ß¡£ËùÒÔC++רÃÅÔö¼ÓÁËbool¡¢true¡¢falseÈý¸ö¹Ø¼ü×ÖÒÔÌṩ¸ü°²È«µÄÌõ¼þ±í´ïʽ¡£
(C)¼ì²éÖ¸ÕëµÄÓÐЧÐÔʱʹÓÃ((strDest==0)||(strSrc==0))£¬ËµÃ÷´ðÌâÕß²»ÖªµÀʹÓó£Á¿µÄºÃ´¦¡£Ö±½ÓʹÓÃ×Ö ......

C±ê×¼¿âÔ´Âë½âÆÊ(12)£º¸¡µãÊý»·¾³fenv.h

     ΪÁ˱àд¸ß¾«¶È¸¡µãÊýµÄÔËË㣬±à³ÌÈËÔ±ÐèÒª¿ØÖƸ¡µãÊý»·¾³µÄ¸÷¸ö·½Ã棺½á¹ûÈçºÎÉáÈ룬¸¡µãÊý±í´ïʽÈçºÎ¼ò»¯Óë±ä»»£¬ÈçºÎ´¦Àí¸¡µãÊýÒì³££¨ÈçÏÂÒçÖ®ÀàµÄ¸¡µãÊýÒì³£ÊǺöÂÔ»¹ÊDzúÉú´íÎ󣩣¬µÈµÈ¡£C99ÒýÈëÁËfenv.hÀ´¿ØÖƸ¡µãÊý»·¾³¡£
    1¡¢fenv.h£º
¶¨ÒåÁ˸¡µãÊý»·¾³¿ØÖƺ¯Êý¡¢Òì³£¿ØÖƺ¯Êý¡¢ÉáÈ뷽ʽ¿ØÖƺ¯Êý¡¢¸¡µãÊýÒì³£ÂëºÍÉáÈ뷽ʽµÈ¡£×¢Ò⸡µãÊý»·¾³µÄʵÏÖÊÇÒÀÀµÓÚÌåϵ½á¹¹µÄ£¬ÒòΪ²»Í¬µÄÌåϵ½á¹¹Óв»Í¬µÄ¸¡µãÊýÖ¸Á¡£ÒÀÀµÓÚÌåϵ½á¹¹µÄ¶¨Òå·ÅÔÚbits/fenv.hÖУ¬ÕâÀïÊÇx86Ìåϵ½á¹¹µÄ°æ±¾(LinuxÏ£©¡£
    ±ê׼ͷÎļþfenv.hÄÚÈÝÈçÏ£º
/* ISO C99 7.6: ¸¡µãÊý»·¾³ <fenv.h> */
#ifndef _FENV_H
#define _FENV_H 1
#include <features.h>
/* »ñÈ¡ÒÀÀµÓÚÌåϵ½á¹¹µÄ¶¨Òå¡£Ó¦¸ÃÒªÓÐÏÂÃæÕâЩ¶¨Ò壺
fenv_t ±íʾ¸¡µãÊý»·¾³µÄÀàÐÍ
FE_DFL_ENV fenv_t *Ö¸ÕëÀàÐ͵ÄÖµ£¬±íʾ¸¡µãÊý»·¾³µÄȱʡֵ£¨ÓÃÓÚÐèÒªfenv_t²ÎÊýµÄº¯ÊýÖУ©
fexcept_t ±íʾ¸¡µãÊýÒì³£±êÖ¾£¨Õâ¸ö±êÖ¾±£´æÁ˸¡µãÊýµÄ״̬£©µÄÀàÐÍ
ÏÂÃæµÄºê±»¶¨Ò壬µ±ÇÒ½öµ±ÊµÏÖÖ§³ÖÕâЩºêʱ£º
FE_INEXACT ²»¾«È·µÄ½á¹û
FE_DIV ......

C/C++±àÒëÆ÷


ºÍÔÚIDEÖбàÒëÏà±È£¬ÃüÁîÐÐģʽ±àÒëËٶȸü¿ì£¬²¢¿ÉÒÔ±ÜÃâ±»IDE²úÉúµÄһЩ¸½¼ÓÐÅÏ¢Ëù¸ÉÈÅ¡£±¾ÎĽ«½éÉÜ΢ÈíC/C++±àÒëÆ÷ÃüÁîÐÐģʽÉ趨ºÍÓ÷¨¡£
 
1¡¢ÉèÖû·¾³±äÁ¿£º
PATH=C:\Program Files\Microsoft Visual Studio 8\VC\bin
INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\include
LIB=C:\Program Files\Microsoft Visual Studio 8\VC\lib
Èç¹ûÌáʾÕÒ²»µ½mspdb80.dllÎļþ£¬Ôò´ÓC:\Program Files\Microsoft Visual Studio 8\Common7\IDEÏ¿½±´“msobj80.dll,mspdb80.dll,mspdbcore.dll,mspdbsrv.exe”ÕâËĸöÎļþµ½C:\Program Files\Microsoft Visual Studio 8\VC\binϼ´¿É¡£
 
2¡¢ÃüÁîÑ¡Ï
1)       /C:ÔÚÔ¤´¦ÀíÊä³öÖб£Áô×¢ÊÍÓï¾ä
2)       /c:Ö»±àÒ룬²»Á¬½Ó£¬Ï൱ÓÚÔÚ"Build"²Ëµ¥ÏÂÑ¡ÔñÁË"Compile"
3)       /D:¶¨Òå³£Á¿ºÍºê£¬ÓëÔ´³ÌÐòÀïµÄ#define ÓÐÏàͬЧ¹û
4)       /E:Ô¤´¦ÀíC¡¢C£«£«Ô´Îļþ£¬½«Ô´ÎļþÖÐËùÓеÄÔ¤±àÒëÖ¸Áî¼°ºêÕ¹¿ª£¬½«×¢ÊÍÈ¥µô£¬È»ºó½«Ô¤´¦ÀíÆ÷µÄÊä³ö¿½±´ÖÁ±ê×¼Êä³öÉ豸Êä³ö£¬² ......

C/C++±àÒëÆ÷


ºÍÔÚIDEÖбàÒëÏà±È£¬ÃüÁîÐÐģʽ±àÒëËٶȸü¿ì£¬²¢¿ÉÒÔ±ÜÃâ±»IDE²úÉúµÄһЩ¸½¼ÓÐÅÏ¢Ëù¸ÉÈÅ¡£±¾ÎĽ«½éÉÜ΢ÈíC/C++±àÒëÆ÷ÃüÁîÐÐģʽÉ趨ºÍÓ÷¨¡£
 
1¡¢ÉèÖû·¾³±äÁ¿£º
PATH=C:\Program Files\Microsoft Visual Studio 8\VC\bin
INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\include
LIB=C:\Program Files\Microsoft Visual Studio 8\VC\lib
Èç¹ûÌáʾÕÒ²»µ½mspdb80.dllÎļþ£¬Ôò´ÓC:\Program Files\Microsoft Visual Studio 8\Common7\IDEÏ¿½±´“msobj80.dll,mspdb80.dll,mspdbcore.dll,mspdbsrv.exe”ÕâËĸöÎļþµ½C:\Program Files\Microsoft Visual Studio 8\VC\binϼ´¿É¡£
 
2¡¢ÃüÁîÑ¡Ï
1)       /C:ÔÚÔ¤´¦ÀíÊä³öÖб£Áô×¢ÊÍÓï¾ä
2)       /c:Ö»±àÒ룬²»Á¬½Ó£¬Ï൱ÓÚÔÚ"Build"²Ëµ¥ÏÂÑ¡ÔñÁË"Compile"
3)       /D:¶¨Òå³£Á¿ºÍºê£¬ÓëÔ´³ÌÐòÀïµÄ#define ÓÐÏàͬЧ¹û
4)       /E:Ô¤´¦ÀíC¡¢C£«£«Ô´Îļþ£¬½«Ô´ÎļþÖÐËùÓеÄÔ¤±àÒëÖ¸Áî¼°ºêÕ¹¿ª£¬½«×¢ÊÍÈ¥µô£¬È»ºó½«Ô¤´¦ÀíÆ÷µÄÊä³ö¿½±´ÖÁ±ê×¼Êä³öÉ豸Êä³ö£¬² ......

linux ÏÂÓÃCʵÏÖ¡®CAT¡¯µÄ¹¦ÄÜ

linux
ÏÂÓÃCʵÏÖ‘CAT’µÄ¹¦ÄÜ
#include<stdio.h>
int main(int argc,char *argv[]){
FILE *file;
char buf[1024],name[20];
int n;
if(argc != 2){
printf("wrong argument\n");
return 1;
}
file=fopen(argv[1],"r");
if(file==NULL){
printf("Cant't open!\n");
return 1;
}
else{
while((n=fread(buf,sizeof(char),1024,file))>0){
printf("%s",buf);
}
}
return 0;
}
......

linux ÏÂÓÃCʵÏÖ¡®CAT¡¯µÄ¹¦ÄÜ

linux
ÏÂÓÃCʵÏÖ‘CAT’µÄ¹¦ÄÜ
#include<stdio.h>
int main(int argc,char *argv[]){
FILE *file;
char buf[1024],name[20];
int n;
if(argc != 2){
printf("wrong argument\n");
return 1;
}
file=fopen(argv[1],"r");
if(file==NULL){
printf("Cant't open!\n");
return 1;
}
else{
while((n=fread(buf,sizeof(char),1024,file))>0){
printf("%s",buf);
}
}
return 0;
}
......
×ܼǼÊý:2015; ×ÜÒ³Êý:336; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [280] [281] [282] [283] 284 [285] [286] [287] [288] [289]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ