Результаты поиска по запросу "lvalue"

1 ответ

Почему составные литералы в C модифицируются

Каждый обычно ассоциирует «немодифицируемый» с термином буквальный

1 ответ

Почему это значение не повышается до значения l, как указано в ссылке?

Rust Reference говорит:Левый операнд выражения присваивания или составного присваивания является lvalue-контекстом, как и единственный операнд унарного заимс...

0 ответов

 память или ограниченный ресурс, такой как дескриптор файла. Но необходимость передать их обратно пахнет скорее «плохим дизайном», чем «полезным ограничением».

рограммировании на C ++ 03 мы не можем передать безымянный временныйT() к функцииvoid foo(T&);, Обычное решение - дать временному имя, а затем передать его следующим образом: T v; foo(v);Теперь идет C ++ 0x - и теперь со ссылками на rvalue ...

ТОП публикаций

0 ответов

, Что-то вроде:

ошибка. Неправильно ли присваивать значение [i] в ​​следующем коде? Или что-то не так с условными операторами? #include<stdio.h> #include<string.h> int main(){ char a[12]="sumit tyagi"; int i=0; while(a[i]!='\0'){ a[i]>90 ? a[i]=a[i]-32 : ...

5 ответов

).

олагая определение: int i = 10; int *p = &i;Почему * p является допустимым значением lvalue здесь: *p+=10;* Не следует оценивать значение p, хранящееся в & i, т.е. 10, и, следовательно, сгенерировать ошибку "Not lvalue"?

3 ответа

, (Я признаю, что вы можете написать это по-другому, хотя.)

+ оператор предварительного приращения дает lvalue, потому что возвращается увеличенный объект, а не его копия. Но в C это дает значение. Почему?

2 ответа

, gcc и clang следует рассматривать как обработку диалекта C, в котором эффективные типы, когда они установлены, становятся постоянными. Они не могут надежно распознать все случаи, когда эффективные типы могут быть изменены, и логика, необходимая для обработки, которая могла бы легко и эффективно обрабатывать многие случаи, о которых авторы gcc уже давно заявляли, не может быть обработана без потрошения оптимизации.

оложим, у меня есть кусок динамически распределенных данных: void* allocate (size_t n) { void* foo = malloc(n); ... return foo; }Я хочу использовать данные, на которые указываетfoo как особый тип,type_t, Но я хочу сделать это позже, а не во ...

8 ответов

Кстати, ошибка, которую я вижу в GCC C, такая же, но по-другому:

int main () { int a = 5,b = 2; printf("%d",a+++++b); return 0; }код выдает следующую ошибку: ошибка: lvalue требуется как операнд приращения Но если я поставлю пробелы во всемa++ + а также++b, то работает нормально. int main () { int a = 5,b = ...

3 ответа

@James Спасибо за разъяснения

я есть базовый класс C ++. Заголовок выглядит так: #pragma once class DataContainer { public: DataContainer(void); ~DataContainer(void); int* getAgeGroup(void); int _ageGroupArray[5]; private: int _ageIndex; };Теперь внутри файла cpp класса я ...

3 ответа

 вместо этого это была постоянная ссылка, и это было бы разрешено стандартом.

string foo() { return "hello"; } int main() { //below should be illegal for binding a non-const (lvalue) reference to a rvalue string& tem = foo(); //below should be the correct one as only const reference can be bind to rvalue(most important ...