Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Teka-teki tentang ungkapan C/C++ R-Value?

Teka-teki tentang ungkapan C/C++ R-Value?

WBOY
WBOYke hadapan
2023-09-15 18:05:021073semak imbas

C/C++ R-Value表达式上的谜题?

Di sini kita akan melihat teka-teki. Katakan ada program seperti di bawah, kita kena beritahu apa itu output dan kenapa?

Contoh

#include<iostream>
using namespace std;
int main() {
   int x = 0xab;
   ~x;
   cout << hex << x;
}

Jadi apakah outputnya? ~x sedang menjalankan operasi pelengkap. Jadi adakah ia memaparkan hasil pelengkap kedua-duanya dalam heks?

Output adalah seperti berikut

Output

ab

Jadi, tiada perubahan. tapi kenapa? Sebabnya ialah ~x sedang menukar x kepada bentuk pelengkapnya, tetapi nilainya tidak diberikan kepada mana-mana pembolehubah. Ungkapan ini ialah ungkapan nilai R. Nilai l tidak disimpan ke dalam beberapa pembolehubah sehingga ia digunakan. Jika kita masukkan nilai L ia akan kelihatan seperti ini -

Contoh

#include<iostream>
using namespace std;
int main() {
   int x = 0xab;
   x = ~x;
   cout << hex << x;
}

Output

ffffff54

Atas ialah kandungan terperinci Teka-teki tentang ungkapan C/C++ R-Value?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam