當前位置:首頁 » 編程語言 » c語言p2等於什麼
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言p2等於什麼

發布時間: 2022-05-28 21:39:33

c語言,p1=NULL,p2=NULL,等價於p2=p1=NULL,對嗎

看處於什麼情況.
賦值的時候 是可以這樣等效的.
但定義的時候不可以
比如
typedef char * CHARP;
CHARP p1=NULL, p2=NULL;
這時就不可以寫作
CHARP p1=p2=NULL;
這樣了.

⑵ c語言中 int a,int *p1,int *p2; p1=&a; p2=p1; 這時候p2是指

可以這么去理解:
p1=&a;//表示p1指針指向a的地址,指針的作用就是為了「指向一個地址」
p2=p1;//p2指針「等於」p1指針,就是p2做了跟p1一樣的事——指向a的地址

⑶ c語言中p2=str+strlen(str)-1是什麼意思

1、這里str是字元串數組名,這里當指針用;strlen(str)-1是求出字元串str的長度再-1,其值就將長度變成了下標值。
2、str+strlen(str)-1就求出了字元串數組最後一個有效位('\0'前面的那個)的地址;p2=str+strlen(str)-1就是把這最後一位的地址(指針)賦給指針p2。換句話說,就是讓指針p2指向字元串str的最後一個有效字元。

⑷ 51單片機c語言中 P2&=0x0F; P2|=(1<<4+c); 是什麼意思

P2&=0X0F;就是 P2=P2&0X0F;就是將高4位清空;
P2|=(1<<4+c); 等效於:P2=P2|((1<<(4+c));就是將P2的第4+c位 賦值1;

⑸ C語言中*p1=*p2與p2=p1有什麼區別都是指針型~謝謝啦

*p1=*p2是把p1指向的變數的值改變,但p1所指向的變數不變,p1=p2,則是p1指向改變了,即p1不再指向原變數的地址,改為指向p2所指向的地址。

⑹ C語言中 P2=~(1<<i) 是什麼意思 =~ 是什麼樣的運算 <<是什麼運算

<<是按位左移運算,~是按位取反運算,=是賦值運算。
P2=~(1<<i)的意思是把1換成二進制數,然後左移i位,再按位取非,將結果賦給P2,等價於P2=(~(1<<i))。
比如i為3。那麼P2= ~(1<<i) = ~(1<<3) 。
先按1個位元組來看,1的二進制為00000001,左移3位得到00001000。取反得到11110111,即十六進制的F7。
如果整數為4個位元組,那麼P2= ~(1<<3) = 0xFFFFFFF7。

⑺ 單片機C語言中p2=0xFF,0xFF什麼意思

0x是16進制的前綴,16進制是計算機中數據的一種表示方法;

十六進制的0xFF就是二進制的11111111,換算成十進制就是255;

十進製表示法不一樣,是逢16進1,它由0-9,A-F組成,字母不區分大小寫,例如10用16進製表示就是A;

P2=0xFF,就是將P2.0~P2.7全部設為1,也就是P2=11111111,當然就不是P2=0x01;

(7)c語言p2等於什麼擴展閱讀

單片機c語言XBYTE的使用

使用keil開發單片機程序時,在absacc.h這個頭文件中,有XBYTE這樣一個宏。它的定義是#defineXBYTE((unsignedcharvolatilexdata*)0)可以使用XBYTE去訪問外部的RAM,也可以用XBYTE去訪問擴展的I/0設備;

關於I/O的控制如下,低位元組表示的是P0埠,高位元組表示的是P2埠,P2埠通常作為控制埠,而P0通常作為數據埠;eg:XBYTE[0x8800]=buz_stu;其中用P2做控制,P0的數據就是buz_stu的狀態。

注意:這里是利用的英特爾匯流排進行訪問的,那麼就會有時序的問題,在C語言中,這些都幫你做完了,所以無需考慮