1樓:匿名使用者
c語言中%p用來輸出指標型別自身的值。
也就是說 %p用來輸出地址。
一、使用方法:
%p一般僅用於printf及同類函式中。形式為printf("%p", varp);
其中後續引數varp為某一個指標變數。如
int a,*p;
p=&a;
printf("%p %p", p, &a);
這裡輸出的p和&a都是int*型。
二、功能:
%p格式符會輸出指標本身的值,也就是指標指向的地址值。
該輸出為16進位制形式,具體輸出值取決於指標指向的實際地址值。
三、與%x區別:
%x同樣輸出16進位制形式,不過%x對應的是int型,也就是說,其輸出長度與系統int型佔的位元組數相等。如32位編譯器,int型佔4位位元組,那麼%x輸出的結果最多為16個16進位制字元。
而%p輸出寬度取決於系統地址匯流排位數,即16位最多輸出4位16進位制字元,32位最多輸出8位16進位制字元,64位最多輸出16位16進位制字元。
所以用%p輸出地址,相對於用%x輸出,可以有更好的移植型和適應性,不會因為更換平臺而引起錯誤。
2樓:匿名使用者
!是取反的邏輯運算,如果p不等於0,則!p為假,p等於0,則!p為真,
參考**如下:
#include
main() else
p=5;
printf("p=%d\n",p);
if(!p) else
}執行效果如下:
3樓:匿名使用者
c語言中if()是條件判斷語句,其中括號裡的值如果是0的話不成立,非0的話成立。
c語言中!是非的意思,!p也就是非p。
所以這行**的意思就是如果p成立就不執行if後的**,p不成立則執行if後面的**。
4樓:使用者名稱都是渣渣
等價於if(p==0)
c語言中,(p為一個指標),語句if(!p)是什麼意思?能給一個簡單例子嗎?
5樓:匿名使用者
!p意思就是 非p,
如果p的值為0,!p判定為真;
如果p的值不是0,!p的判定為假
現在一個指標,指標有內容,即:p的值不是0,!p的判定為假如果指標沒有內容,null,即:p的值為0,!p判定為真;
6樓:
在沒有得到有效記憶體的情況下p=null
if(!p)就相當於if(p!=null)
一般用來判斷申請記憶體是否成功
7樓:匿名使用者
通常指標在未應用時為避免誤用會賦null,空值。指標很危險。
8樓:匿名使用者
是否申請成功和釋放前的判斷。
c語言中if(p=a!=0)是什麼意思
9樓:六月天空中的雨
int p,a=5
定義兩個有符號的整型變數 p,a,並且對a賦值5if(p=a!=0)
分兩步 從右到左
1、a!=0 是判斷a是否等於0
若等於 返回 0
若等於 返回 1
結果是不等於 返回了 1
2、p= 返回值 也就是 p=1
3、這時候,再判斷 if(p) 判斷結果為真,所以輸出p的值 ,為10分數。。。。。。暈不暈呀,不厚道~
10樓:
這個 你要了解 運算子的 優先順序問題
請看 運算子優先順序 列表
!=的優先順序 明顯高於 賦值運算子
所以p=a!=0的計算順序是 p=(a!=0)(可以這麼理解)a的值是5,所以a!
=0必然是 真 所以 p被賦值1而if的判斷條件 變成 if(p=1)即 if(p),即if(1)所以 會執行printf(" %d\n",p) ;
所以輸出 1
11樓:回首千尋
(p=a)!=0就是將a的值付給p,判斷p不等於0,等價於 a!=0,當然不等啊,a等於5啊
12樓:
int p 為定義變數p
a=5 定義變數a,並賦值a等於5
if(p=a!=0) a!=0賦值於p
因為a!=0為真,所以賦p值為1
13樓:匿名使用者
正確答案是1.p賦值是對所以是1
c語言中if(!n)是什麼意思?
14樓:桑仁言雪
\n是換行符,通常在輸出中用作格式控制。如printf("what
agood
day!\n");
這樣,在輸出what
agood
day!之後,就可以換行,游標移動到下一行了。
希望可以幫到你。
15樓:匿名使用者
對於整數 ,當n為0時,轉換為布林值就是 假,此時 !n 就是 真 進入if後面的語句塊
當 n 為 非0值是,轉換為布林值 就是 真,此時 !n 就是假,不執行if後面的語句塊
如果n 本身就是布林值,也就是 在n為假的時候 執行if後面的語句塊,n為真的時候不執行 if後面的語句塊
希望可以幫助到你
16樓:匿名使用者
這個語句沒有什麼難理解的,急需要把if('\n' == ch)中的'\n'理解成一個字元變數。只要ch的值等於'\n',此判讀語句為真。
17樓:汝曼華劍念
「==」是判斷符號,c等於n時,c=='n'語句執行完後為1,所以總的來說就是c等於'n'或者'n'時,括號中的語句為真,那麼執行if下的指令語句
18樓:惠素芹慎煙
這是「轉義字元」。表示一個「換行(lf)」
,將當前位置移到下一行開頭。
19樓:偏愛你眼
if(!n)等價於if(n=0)
if(n)等價於if(n!=0)
c語言中是什麼意思c語言中x是什麼意思
在c語言中,x代表的意思是按位取反的意思。將x按位取反 比如x 10101010b。那麼 x 01010101b。還要注意,在c語言中,還有邏輯取反符號 x 的返回值只有0和1兩種。如果x為0,則!x 1。如果x不等於0.則!x的返回值為0。擴充套件資料 c語言關鍵字。signed 宣告有符號型別變...
c語言中的,c語言中 是什麼意思
c語言中的 是邏輯運算中的非運算。是c語言中的非運算子,在變數前面使用它,會構建非運算表示式,表示式的返回結果是個布林值 也就是隻有true或false 對變數使用時,如果變數不是布林資料型別,將會強制轉化為布林型別再使用,如整形變數123將被轉化為true,整形變數0將被轉化為false。擴充套件...
c語言中alpha是什麼意思c語言中charalpha5的含義
1 c語言程式設計中baialpha通道是一個du8位的灰度通道,該通zhi 道用256級灰度來記錄dao影象中的透明 內度資訊,定義透明 不透明和半透容明區域,其中黑表示透明,白表示不透明,灰表示半透明。2 阿爾法通道 alpha channel 是指一張 的透明和半透明度。例如 一個使用16位儲...