C/C++Êý¾ÝÀàÐÍ(ÍøÉÏ×ÊÁÏ×ܽá)
1. cÓïÑÔÖеÄÕûÊýÀàÐÍÓÐchar, short, int, longµÈ¼¸ÖÖ, ÏÂÃæÊÇCÓïÑÔ¶ÔÿÖÖÊý¾ÝÀàÐͳ¤¶ÈµÄ¹æ¶¨:
(a). shortºÍlongÀàÐ͵ij¤¶È²»Ïàͬ
(b). intÀàÐÍͨ³£Í¬¾ßÌå»úÆ÷µÄÎïÀí×Ö³¤Ïàͬ
(c). shortͨ³£ÊÇ16bits, intͨ³£ÊÇ16bits or 32bitsÿÖÖ±àÒëÆ÷¿ÉÒÔ¸ù¾ÝÓ²¼þµÄ²»Í¬×ÔÓÉÈ·¶¨, µ«ÊÇshortºÍint±ØÐë×îÉÙÊÇ16bits, ¶ølongÀàÐͱØÐë×îÉÙÊÇ32bits, ²¢ÇÒshort±ØÐë±ÈintºÍlongÀàÐÍÒª¶Ì¡£
2. sizeof() ÔËËã·û·µ»ØµÄÊÇÒ»ÖÖÊý¾ÝÀàÐÍÖÐËù°üº¬µÄ×Ö½ÚÊý(bytes), AnsiC¹æ¶¨sizeof(char)±ØÐë·µ»Ø1£¬µ±sizeof×÷ÓÃÓÚÊý×éʱ, ·µ»ØµÄÊÇÊý×éÖÐËùÓгÉÔ±ËùÕ¼µÄ×Ö½ÚÊý(×¢Òâ²¢²»ÊÇÊý×éÖгÉÔ±µÄ¸öÊý), µ±sizeof()×÷ÓÃÓڽṹÌåºÍ¹«ÓÃÌåʱ,·µ»ØµÄ²»½ö½öÊÇÊý¾Ý³ÉÔ±×ܵÄ×Ö½ÚÊý, »¹°üÀ¨±àÒëÆ÷ΪÁËʵÏÖ×Ö½Ú¶ÔÆä¶øÌî³äµÄÄÇЩ×Ö½Ú¡£
---------------------------------------------------------------------------------------------------------------------------------------------
C++Êý¾ÝÀàÐͳ¤¶ÈÎÊÌâ:
Ò»¡¢×Ö½ÚºÍ×Ö³¤
×Ö½Ú£¬°Ëλ¾ÍÊÇÒ»¸ö×Ö½Ú£¬Êǹ̶¨¸ÅÄî¡£×Ö³¤ÊÇÖ¸¼ÆËã»úÒ»´ÎÄÜ´¦ÀíµÄ¶þ½øÖÆÊý¾ÝµÄ³¤¶È£¬ÊÇÒ»¸ö·Ç¹Ì¶¨µÄ¸ÅÄî¡£ÀýÈ磬8λ¼ÆËã»úµÄ×Ö³¤Îª8£¬¼´Ò»¸ö×Ö½Ú£¬ 32λ¼ÆËã»úµÄ×Ö³¤Î»32£¬¼´4¸ö×Ö½Ú£¬Í¬Àí£¬64λ¼ÆËã»úµÄ×Ö³¤Îª64£¬¼´8×Ö½Ú¡£
¶þ¡¢C++ÖеÄÊý¾ÝÀàÐÍ
1¡¢×Ö·ûÐÍÊý¾Ýchar£¬¸ÃÀàÐÍʼÖÕÊÇÒ»¸ö×Ö½Ú³¤£¬¼´8λ¡£
2¡¢ÕûÐÎint¡¢¶ÌÕûÐÍshortºÍ³¤ÕûÐÎlong¡£Í¨³£intΪһ¸ö×Ö³¤£¬shortΪ°ë¸ö×Ö³¤£¬longΪһ¸ö»ò2¸ö×Ö³¤£¨ÔÚ32λ»úÆ÷ÖÐΪһ¸ö×Ö³¤£©¡£
3¡¢¸¡µãÐÍfloat¡¢Ë«¾«¶Èdouble¡¢ºÍ³¤Ë«¾«¶Èlong double£¬·Ö±ð±íʾµ¥¾«¶È¸¡µãÊý Ë«¾«¶È¸¡µãÊýºÍÀ©Õ¹¾«¶ÈµÄ¸¡µãÊýÖµ¡£µäÐÍÇé¿öÏ£¬float Ϊһ¸ö×Ö£¬doubleÊÇÁ½¸ö×Ö£¬long doubleΪÁ½¸ö»òÈý¸ö»òËĸö×Ö¡£
char£¬short£¬intºÍlongÀàÐÍ·Ö±ðÓж೤?
Æä³¤¶È·Ö±ðΪһ×Ö½Ú£¬ÖÁÉÙÁ½×Ö½Ú£¬ÖÁÉÙÁ½×Ö½ÚºÍÖÁÉÙ4×Ö½Ú¡£³ý´ËÖ®Í⣬²»ÒªÔÙÒÀÀµÈκÎÔ¼¶¨¡£
charÀàÐ͵ij¤¶È±»¶¨ÒåΪһ¸ö8λ×Ö½Ú£¬ÕâºÜ¼òµ¥¡£
shortÀàÐ͵ij¤¶ÈÖÁÉÙΪÁ½×Ö½Ú¡£ÔÚÓÐЩ¼ÆËã»úÉÏ£¬¶ÔÓÚÓÐЩ±àÒë³ÌÐò£¬shortÀàÐ͵ij¤¶È¿ÉÄÜΪ4×Ö½Ú£¬»òÕ߸ü³¤¡£
intÀàÐÍÊÇÒ»¸öÕûÊýµÄ“×ÔÈ»”´óС£¬Æä³¤¶ÈÖÁÉÙΪÁ½×Ö½Ú£¬²¢ÇÒÖÁÉÙÒªºÍshortÀàÐÍÒ»Ñù³¤¡£ÔÚ16λ¼ÆËã»úÉÏ£¬intÀàÐ͵ij¤¶È¿ÉÄÜΪÁ½×Ö½Ú£»ÔÚ32λ¼ÆËã»úÉÏ£¬¿ÉÄÜΪ4×Ö½Ú£»µ±64λ¼ÆËã»úÁ÷ÐÐÆðÀ´ºó£¬intÀàÐ͵ij¤¶È¿ÉÄÜ»á´ïµ½8×Ö½Ú¡£ÕâÀï˵µÄ¶¼Ê
Ïà¹ØÎĵµ£º
ÀûÓÃ
ÏÂÔØµÄÕâ¶Î´úÂ룬³É¹¦ÊµÏÖÁËÊØ»¤½ø³Ì£¬ÔÀ´ÊØ»¤½ø³ÌÊǺܼòµ¥µÄÊÂÇé¡£
¡¡¡¡ÔÚmainº¯ÊýÖÐÖ´ÐÐ
¡¡¡¡init_daemon();//³õʼ»¯ÎªDaemon
¡¡¡¡¾Í¿ÉÒ԰ѽø³Ì±ä³ÉÊØ»¤½ø³Ì
¡¡¡¡
#include
#include
#include
#include
#include
void
init_daemon(void
)
{
int
pid;
int
i;
if
(pid=fork()) ......
¡¡¡¡ÔÚ×öACMÌâʱ£¬¾³£¶¼»áÓöµ½Ò»Ð©±È½Ï´óµÄÕûÊý¡£¶ø³£ÓõÄÄÚÖÃÕûÊýÀàÐͳ£³£ÏÔµÃ̫СÁË£ºÆäÖÐlong ºÍ int
·¶Î§ÊÇ[-2^31,2^31)£¬¼´-2147483648~2147483647¡£¶øunsigned·¶Î§ÊÇ[0,2^32)£¬¼´
0~4294967295¡£Ò²¾ÍÊÇ˵£¬³£¹æµÄ32λÕûÊýÖ»Äܹ»´¦Àí40ÒÚÒÔϵÄÊý¡£
¡¡¡¡ÄÇÓöµ½±È40ÒÚÒª´óµÄÊýÔõô°ìÄØ£¿Õâʱ¾ÍÒªÓõ½C++µÄ64λÀ©Õ¹ ......
// & Óë,½«Ö¸¶¨Î»ÖÃÉèÖÃΪ0 | »ò,½«Ö¸¶¨Î»ÖÃÉèÖÃΪ1
//×¢: Ö»Õë¶Ô´¿×ÖĸµÄÇé¿ö
#include <stdio.h>
#include <string>
int main()
{
char str[6] = "xxing";
std::string str1 = "INGXX";
for(int i = 0; i < 5; i++)
{
str[i] &= 0xdf; ......
時間²»µÈÈË£¬ÔÚÎÒ還δÀÏȥ֮ǰ£¬Ïë°Ñ丟µôµÄC³ÌÊ½ÖØÐÂÔÙ揀Æð來¡£
Èë門£¬½¨議£¨ÎÒÒ²ÊÇÐÂÊÖ£©²»Òª¿´譚´ó爺µÄ書£¬對ÓÚ20ÊÀ紀學習C語ÑÔ£¬c Primer Plus 5thÎÒ認為ÊÇÒ»個ºÃµÄ選擇¡£
ÎҵĵÚÒ»& ......