ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

CÓïÑÔÃæÊÔÌâ´ó»ã×Ü(Îå)
2014-11-24 01:20:08 ¡¾´ó ÖРС¡¿ ä¯ÀÀ:513´Î
Tags£ºÓïÑÔ ÊÔÌâ »ã×Ü

¸ø¶¨½á¹¹struct A
{
char t:4; 4λ
char k:4; 4λ
unsigned short i:8; 8λ
unsigned long m; // Æ«ÒÆ2×Ö½Ú±£Ö¤4×Ö½Ú¶ÔÆë
}; // ¹²8×Ö½Ú
2)ÏÂÃæµÄº¯ÊýʵÏÖÔÚÒ»¸öÊýÉϼÓÒ»¸öÊý£¬ÓÐʲô´íÎó£¿Çë¸ÄÕý¡£
int add_n ( int n )
{
static int i = 100;
i += n;
return i;
}
µ±ÄãµÚ¶þ´Îµ÷ÓÃʱµÃ²»µ½ÕýÈ·µÄ½á¹û£¬ÄѵÀÄãд¸öº¯Êý¾ÍÊÇΪÁ˵÷ÓÃÒ»´Î£¿ÎÊÌâ¾Í³öÔÚ
staticÉÏ£¿
// °ïæ·ÖÎöÒ»ÏÂ
#include
#include
#include
#include
#include
#include
typedef struct AA
{
int b1:5;
int b2:2;
}AA;
void main()
{
AA aa;
char cc[100];
strcpy(cc,¡±0123456789abcdefghijklmnopqrstuvwxyz¡±);
cout< memcpy(&aa,cc,sizeof(AA));
cout << aa.b1 ´ð°¸ÊÇ -16ºÍ£±
Ê×ÏÈsizeof(AA)µÄ´óСΪ4,b1ºÍb2·Ö±ðÕ¼5bitºÍ2bit.
¾­¹ýstrcpyºÍmemcpyºó,aaµÄ4¸ö×Ö½ÚËù´æ·ÅµÄÖµÊÇ:
0,1,2,3µÄASCÂ룬¼´00110000,00110001,00110010,00110011
ËùÒÔ£¬×îºóÒ»²½£ºÏÔʾµÄÊÇÕ⣴¸ö×Ö½ÚµÄÇ°£µÎ»£¬ºÍÖ®ºóµÄ£²Î»
·Ö±ðΪ£º10000,ºÍ01
ÒòΪintÊÇÓÐÕý¸ºÖ®·Ö ËùÒÔ£º´ð°¸ÊÇ-16ºÍ£±
Çóº¯Êý·µ»ØÖµ£¬ÊäÈëx=9999;
int func £¨ x £©
{
int countx = 0;
while ( x )
{
countx ++;
x = x&(x-1);
}
return countx;
}
½á¹ûÄØ£¿
ÖªµÀÁËÕâÊÇͳ¼Æ9999µÄ¶þ½øÖÆÊýÖµÖÐÓжàÉÙ¸ö1µÄº¯Êý£¬ÇÒÓÐ
9999£½9¡Á1024£«512£«256£«15
9¡Á1024Öк¬ÓÐ1µÄ¸öÊýΪ2£»
512Öк¬ÓÐ1µÄ¸öÊýΪ1£»
256Öк¬ÓÐ1µÄ¸öÊýΪ1£»
15Öк¬ÓÐ1µÄ¸öÊýΪ4£»
¹Ê¹²ÓÐ1µÄ¸öÊýΪ8£¬½á¹ûΪ8¡£
1000 - 1 = 0111£¬ÕýºÃÊÇÔ­ÊýÈ¡·´¡£Õâ¾ÍÊÇÔ­Àí¡£
ÓÃÕâÖÖ·½·¨À´Çó1µÄ¸öÊýÊǺÜЧÂʺܸߵġ£
²»±ØÈ¥Ò»¸öÒ»¸öµØÒÆλ¡£Ñ­»·´ÎÊý×îÉÙ¡£
int a,b,c Çëдº¯ÊýʵÏÖC=a+b ,²»¿ÉÒԸıäÊý¾ÝÀàÐÍ,È罫c¸ÄΪlong int,¹Ø¼üÊÇÈçºÎ
´¦ÀíÒç³öÎÊÌâ
bool add (int a, int b,int *c)
{
*c=a+b;
return (a>0 && b>0 &&(*ca || *c>b)));
}
·ÖÎö£º
struct bit
{ int a:3;
int b:2;
int c:3;
};
int main()
{
bit s;
char *c=(char*)&s;
cout<*c=0x99;
cout << s.a printf("%x",a);
return 0;
}
Êä³öΪʲôÊÇ
4
1
-1
-4
ffffffff
ÒòΪ0x99ÔÚÄÚ´æÖбíʾΪ 100 11 001 , a = 001, b = 11, c = 100
µ±cΪÓзûºÏÊýʱ, c = 100, ×î¸ß1Ϊ±íʾcΪ¸ºÊý£¬¸ºÊýÔÚ¼ÆËã»úÓò¹Âë±íʾ£¬ËùÒÔc
= -4;ͬÀí
b = -1;
µ±cΪÓзûºÏÊýʱ, c = 100,¼´ c = 4,ͬÀí b = 3
λÓò £º
ÓÐЩÐÅÏ¢Ôڴ洢ʱ£¬²¢²»ÐèÒªÕ¼ÓÃÒ»¸öÍêÕûµÄ×Ö½Ú£¬ ¶øÖ»ÐèÕ¼¼¸¸ö»òÒ»¸ö¶þ½øÖÆλ¡£Àý
ÈçÔÚ´æ·ÅÒ»¸ö¿ª¹ØÁ¿Ê±£¬Ö»ÓÐ0ºÍ1 Á½ÖÖ״̬£¬ÓÃһλ¶þ½øλ¼´¿É¡£ÎªÁ˽ÚÊ¡´æ´¢¿Õ¼ä£¬
²¢Ê¹´¦Àí¼ò±ã£¬£ÃÓïÑÔÓÖÌṩÁËÒ»ÖÖÊý¾Ý½á¹¹£¬³ÆΪ¡°Î»Óò¡±»ò¡°Î»¶Î¡±¡£Ëùν¡°Î»
Óò¡±ÊÇ°ÑÒ»¸ö×Ö½ÚÖеĶþ½øλ»®·ÖΪ¼¸¸ö²»Í¬µÄÇøÓò£¬ ²¢ËµÃ÷ÿ¸öÇøÓòµÄλÊý¡£Ã¿¸öÓò
ÓÐÒ»¸öÓòÃû£¬ÔÊÐíÔÚ³ÌÐòÖа´ÓòÃû½øÐвÙ×÷¡£ÕâÑù¾Í¿ÉÒ԰Ѽ¸¸ö²»Í¬µÄ¶ÔÏóÓÃÒ»¸ö×Ö½Ú
µÄ¶þ½øÖÆλÓòÀ´±íʾ¡£Ò»¡¢Î»ÓòµÄ¶¨ÒåºÍλÓò±äÁ¿µÄ˵Ã÷λÓò¶¨ÒåÓë½á¹¹¶¨ÒåÏà·Â£¬Æä
ÐÎʽΪ£º
struct λÓò½á¹¹Ãû
{ λÓòÁбí };
ÆäÖÐλÓòÁбíµÄÐÎʽΪ£º ÀàÐÍ˵Ã÷·û λÓòÃû£ºÎ»Óò³¤¶È
ÀýÈ磺
struct bs
{
int a:8;
int b:2;
int c:6;
};
λÓò±äÁ¿µÄ˵Ã÷Óë½á¹¹±äÁ¿ËµÃ÷µÄ·½Ê½Ïàͬ¡£ ¿É²ÉÓÃÏȶ¨Òåºó˵Ã÷£¬Í¬Ê±¶¨Òå˵Ã÷»òÕß
Ö±½Ó˵Ã÷ÕâÈýÖÖ·½Ê½¡£ÀýÈ磺
struct bs
{
int a:8;
int b:2;
int c:6;
}data;
˵Ã÷dataΪbs±äÁ¿£¬¹²Õ¼Á½¸ö×Ö½Ú¡£ÆäÖÐλÓòaÕ¼8λ£¬Î»ÓòbÕ¼2λ£¬Î»ÓòcÕ¼6λ¡£¶ÔÓÚ
λÓòµÄ¶¨ÒåÉÐÓÐÒÔϼ¸µã˵Ã÷£º
1. Ò»¸öλÓò±ØÐë´æ´¢ÔÚͬһ¸ö×Ö½ÚÖУ¬²»ÄÜ¿çÁ½¸ö×Ö½Ú¡£ÈçÒ»¸ö×Ö½ÚËùÊ£¿Õ¼ä²»¹»´æ·Å
ÁíһλÓòʱ£¬Ó¦´ÓÏÂÒ»µ¥ÔªÆð´æ·Å¸ÃλÓò¡£Ò²¿ÉÒÔÓÐÒâʹijλÓò´ÓÏÂÒ»µ¥Ôª¿ªÊ¼¡£Àý
È磺
struct bs
{
unsigned a:4
unsigned :0 /*¿ÕÓò*/
unsigned b:4 /*´ÓÏÂÒ»µ¥Ôª¿ªÊ¼´æ·Å*/
unsigned c:4
}
ÔÚÕâ¸öλÓò¶¨ÒåÖУ¬aÕ¼µÚÒ»×Ö½ÚµÄ4룬ºó4λÌî0±íʾ²»Ê¹Óã¬b´ÓµÚ¶þ×Ö½Ú¿ªÊ¼£¬Õ¼ÓÃ
4룬cÕ¼ÓÃ4λ¡£
2. ÓÉÓÚλÓò²»ÔÊÐí¿çÁ½¸ö×Ö½Ú£¬Òò´ËλÓòµÄ³¤¶È²»ÄÜ´óÓÚÒ»¸ö×ֽڵij¤¶È£¬Ò²¾ÍÊÇ˵²»
Äܳ¬¹ý8λ¶þ½øλ¡£
3. λÓò¿ÉÒÔÎÞλÓòÃû£¬ÕâʱËüÖ»ÓÃÀ´×÷Ìî³ä»òµ÷ÕûλÖá£ÎÞÃûµÄλÓòÊDz»ÄÜʹÓõġ£Àý
È磺
struct k
{
int a:1
int :2 /*¸Ã2λ²»ÄÜʹÓÃ*/
int b:3
int c:2
};
´ÓÒÔÉÏ·ÖÎö¿ÉÒÔ¿´³ö£¬Î»ÓòÔÚ±¾ÖÊÉϾÍÊÇÒ»ÖֽṹÀàÐÍ£¬ ²»¹ýÆä³ÉÔ±ÊÇ°´¶þ½øλ·ÖÅä
µÄ¡£
¶þ¡¢Î»ÓòµÄʹÓÃλÓòµÄʹÓúͽṹ³ÉÔ±µÄʹÓÃÏàͬ£¬ÆäÒ»°ãÐÎʽΪ£º λÓò±äÁ¿Ãû λÓò
Ãû λÓòÔÊÐíÓø÷ÖÖ¸ñʽÊä³ö¡£
main(){
struct bs
{
unsigned a:1;
unsigned b:3;
unsigned c:4;
} bit,*pbit;
bit.a=1;
bit.b=7;
bit.c=15;
pri
¸Ä´í£º
#include
int main(void) {
int **p;
int arr[100];
p = &arr;
return 0;
}
½â´ð£º
¸ã´íÁË,ÊÇÖ¸ÕëÀàÐͲ»Í¬,
int **p; //¶þ¼¶Ö¸Õë
&arr; //µÃµ½µÄÊÇÖ¸ÏòµÚһάΪ100µÄÊý×éµÄÖ¸Õë
#include
int main(void) {
int **p, *q;
int arr[100];
q = arr;
p = &q;
return 0;
}
ÏÂÃæÕâ¸ö³ÌÐòÖ´Ðкó»áÓÐʲô´íÎó»òÕßЧ¹û:
#define MAX 255
int main()
{
unsigned char A[MAX],i;//i±»¶¨ÒåΪunsigned char
for (i=0;i<=MAX;i++)
A[i]=i;
}
½â´ð£ºËÀÑ­»·¼ÓÊý×éÔ½½ç·ÃÎÊ£¨C/C++²»½øÐÐÊý×éÔ½½ç¼ì²é£©
MAX=255
Êý×éAµÄϱ귶ΧΪ:0..MAX-1,ÕâÊÇÆäÒ»..
Æä¶þ.µ±iÑ­»·µ½255ʱ,Ñ­»·ÄÚÖ´ÐÐ:
A[255]=255;
Õâ¾ä±¾ÉíûÓÐÎÊÌâ..µ«ÊÇ·µ»Øfor (i=0;i<=MAX;i++)Óï¾äʱ,
ÓÉÓÚunsigned charµÄÈ¡Öµ·¶Î§ÔÚ(0..255),i++ÒÔºóiÓÖΪ0ÁË..ÎÞÏÞÑ­»·ÏÂÈ¥.
struct name1{
char str;
short x;
int num;
}
struct name2{
char str;
int num;
short x;
}
sizeof(struct name1)=8,sizeof(struct name2)=12
ÔÚµÚ¶þ¸ö½á¹¹ÖУ¬Îª±£Ö¤num°´Ëĸö×Ö½Ú¶ÔÆ룬charºó±ØÐëÁô³ö3×ֽڵĿռ䣻ͬʱΪ±£
Ö¤Õû¸ö½á¹¹µÄ×ÔÈ»¶ÔÆ루ÕâÀïÊÇ4×Ö½Ú¶ÔÆ룩£¬ÔÚxºó»¹Òª²¹Æë2¸ö×Ö½Ú£¬ÕâÑù¾ÍÊÇ12×Ö
½Ú¡£
intel£º
A.c ºÍB.cÁ½¸öcÎļþÖÐʹÓÃÁËÁ½¸öÏàͬÃû×ÖµÄstatic±äÁ¿,±àÒëµÄʱºò»á²»»áÓÐÎÊÌâ Õâ
Á½¸östatic±äÁ¿»á±£´æµ½ÄÄÀջ»¹ÊǶѻòÕßÆäËûµÄ£©
staticµÄÈ«¾Ö±äÁ¿£¬±íÃ÷Õâ¸ö±äÁ¿½öÔÚ±¾Ä£¿éÖÐÓÐÒâÒ壬²»»áÓ°ÏìÆäËûÄ£¿é¡£
ËûÃǶ¼·ÅÔÚÊý¾ÝÇø£¬µ«ÊDZàÒëÆ÷¶ÔËûÃǵÄÃüÃûÊDz»Í¬µÄ¡£
Èç¹ûҪʹ±äÁ¿ÔÚÆäËûÄ£¿éÒ²ÓÐÒâÒåµÄ»°£¬ÐèҪʹÓÃextern¹Ø¼ü
Ê×Ò³ ÉÏÒ»Ò³ 2 3 4 5 6 ÏÂÒ»Ò³ βҳ 5/6/6
¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
ÉÏһƪ£ºcÓïÑÔ³£¼û±ÊÊÔÌâ×ܽá ÏÂһƪ£ºÒ»¸öºÜÅ£µÄÈ˳öµÄ±»ÖÚ¶àÖªÃûITÆó..

×îÐÂÎÄÕÂ

ÈÈÃÅÎÄÕÂ

Hot ÎÄÕÂ

Python

C ÓïÑÔ

C++»ù´¡

´óÊý¾Ý»ù´¡

linux±à³Ì»ù´¡

C/C++ÃæÊÔÌâÄ¿