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

左值表達式c語言

發布時間: 2022-07-21 17:08:46

c語言中什麼是左值

左值是指可以被賦值的表達式。左值位於賦值語句的左側,與其相對的右值(rvaule,見
1.11)則位於賦值語句的右側。每條賦值語句都必須有一個左值和一個右值。左值必須是內存中一個可存儲的變數,而不能是一個常量.

② 什麼是C語言左值(lvaule)求大神幫助

左值是指可以被賦值的表達式。左值位於賦值語句的左側,與其相對的右值(rvaule,見 1.11)則位於賦值語句的右側。每條賦值語句都必須有一個左值和一個右值。左值必須是內存中一個可存儲的變數,而不能是一個常量。下面給出了一些左值的例子: int x; int *p_int; x=1; p_int=5; 變數x是一個整數,它對應於內存中的一個可存儲位置,因此,在語句「x=1」中,x就是一個左值。注意,在第二個賦值語句「*p_int=5"中,通過「*」修飾符訪問p_int所指向的內存區域;因此,p_int是一個左值。 相反,下面的幾個例子就不是左值: #define CONST_VAL 10 int x /* example 1 * / l=x; / * example 2 * / CONST_VAL = 5; 在上述兩條語句中,語句的左側都是一個常量,其值不能改變,因為常量不表示內存中可 存儲的位置。因此,這兩條賦值語句中沒有左值,編譯程序會指出它們是錯誤的。

③ C語言 什麼叫做左值右值

左值,就是指可以被取地址的表達式。簡單的說,可以出現在等號左邊的就是左值。比如:

④ C語言語法問題,左操作數必須為左值是什麼意思啊我該怎麼改啊

所謂左值是指一個能用於賦值運算左邊的表達式。左值必須能夠被修改,不能是常量。我們用變數作左值,還可以看到,指針和引用也可以作左值。改成b=9-c。
一般形式為:變數=表達式。它的作用是將一個表達式的值賦給一個左值。
計算賦值運算符右側表達式的值(「=」為賦值運算符),將賦值運算符右側表達式的值賦給左側的變數,將賦值運算符左側的變數的值作為表達式的值。
例如:
int
a,
b,
c;
a=3;
b=4;
c
=
(
a
+
b
)*(2*a
-
b)
//
得出14
(4)左值表達式c語言擴展閱讀:
注意
1.
多重賦值表達式不能出現在變數說明中。例如:
int
i=j=0;
是非法的。
例:有變數說明
int
a=2,b;
指出下面表達式運算後a和b的結果。
b+=b=++a;
答:a為3,b為6。
<>
有時將賦值運算與比較運算結合在一起形成嵌入賦值。例如:
while
((ch=getchar())!='\n');
這條語句的含義是:等待用戶按下回車鍵後程序向下執行。
2.
x
*=
y+8等價於x=x*(y+8),不等價於
x
=
x*y+8。
同樣:z
&=
y-x等價於z
=
z
&
(y-x),而不等價於z
=
z
&y
-x。
參考資料:
搜狗網路-賦值運算符

⑤ C語言,關於左值,右值的概念問題

1、例如:a[3] = 5;*p = 55;
2、非常量的變數空間可以寫入,自然就是左值了
3、右值指的是常量或者比如算術運算的中間結果,只能讀出,不能寫入,當然就是右值了
一般而言,左值是可以作為右值的,左值的本意是只寫,右值的本意是只讀

⑥ C++中提到的左值是什麼意思

在C語言中,左值(left value),指在賦值表達式(assignment expression)中作為將要賦予值的地址的表達式。


例如在賦值語句

i=10;

中i就是一個左值,它必須是一個變數,或是一個解引用的指針(如下)

int*p;
*p=10;


在C的yacc語法中,賦值表達式被這樣定義

assignment_expression
:conditional_expression
|unary_expressionassignment_operatorassignment_expression
;

也就是說,在純語法的層面,左值必須是一元表達式