Форум Кургана и Курганской области и наших друзей

Зима. Форум Кургана и Курганской области и наших друзей
24 Октябрь 2020, 18:18:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости:
 
   Начало   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как вернуть адрес элемента в C++?  (Прочитано 3285 раз)
0 Пользователей и 1 Гость смотрят эту тему.
geniy
Губернский секретарь
**

Карма: 0
Offline Offline

Сообщений: 56


Награды
« : 02 Июль 2012, 18:46:10 »

Есть элемент
Код:
int u[x][y];
.

Нужно вернуть его адрес.

Если написать:
Код:
return &u[x][y];
то вылетит ошибка: error C2440: return: невозможно преобразовать 'int *' в 'int'.

Подскажите пожалуйста, есть ли вообще такая возможность?
Записан
AGhost
Забанен
Тайный советник
*********

Карма: 600
Offline Offline

у пользователя уже 2 предупреждения
Сообщений: 6890


90027_veteran.gif


Награды
« Ответ #1 : 02 Июль 2012, 19:19:45 »

У вас наверно функция возвращает тип int, а return в данном случае возвращает указатель на int, потому и такая ошибка вываливается. Поменяйте тип возвращаемого значения функции на  "int *".
Записан

Прощайте!
geniy
Губернский секретарь
**

Карма: 0
Offline Offline

Сообщений: 56


Награды
« Ответ #2 : 06 Июль 2012, 17:58:25 »

У вас наверно функция возвращает тип int, а return в данном случае возвращает указатель на int, потому и такая ошибка вываливается. Поменяйте тип возвращаемого значения функции на  "int *".
Во спасибо большое, оказывается нужно было просто тип поменять.

Ещё вот такая проблема возникла.  MS Visual C++ нормально работает на Vista и Seven. А когда поставил на XP SP3, то при компиляции любой программы выдает вот это:
Код:
------ Перестроение всех файлов начато: проект: 1.2.1, Конфигурация: Debug Win32 ------
Удаление промежуточных и выходных файлов проекта "1.2.1", конфигурации "Debug|Win32"
Компиляция...
stdafx.cpp
Компиляция...
1.2.1.cpp
Компиляция манифеста в ресурсы...
Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
Copyright (C) Microsoft Corporation.  All rights reserved.
Компоновка...
LINK : не найден или не выполнена сборка C:\Documents and Settings\Администратор\Рабочий стол\1.2.1\Debug\1.2.1.exe при последней инкрементной компоновке; выполняется полная компоновка
LINK : warning LNK4067: неоднозначная точка входа; выбрана "mainCRTStartup"
Внедрение манифеста...
Проект : error PRJ0002 : Результат ошибки 1 возвращен из "C:\WINDOWS\system32\cmd.exe".
Журнал построения был сохранен в "file://c:\Documents and Settings\Администратор\Рабочий стол\1.2.1\1.2.1\Debug\BuildLog.htm"
1.2.1 - ошибок 1, предупреждений 1
========== Перестроение всех: успешно: 0, с ошибками: 1, пропущено: 0 ==========

Насколько я понял, поискав в интернете, такая ошибка связана со слишком большим числом аргументов, поступивших в cmd.exe (более 8192?). Как это исправить?
Записан
AGhost
Забанен
Тайный советник
*********

Карма: 600
Offline Offline

у пользователя уже 2 предупреждения
Сообщений: 6890


90027_veteran.gif


Награды
« Ответ #3 : 07 Июль 2012, 16:31:27 »

Даж не знаю, ни разу не сталкивался... Правда, под XP давно уж не работаю. А какая версия MSVS? 2010? Сервиспаки-апдейты все накатил (как для системы, так и для MSVS)?
Записан

Прощайте!
geniy
Губернский секретарь
**

Карма: 0
Offline Offline

Сообщений: 56


Награды
« Ответ #4 : 12 Июль 2012, 20:29:24 »

Даж не знаю, ни разу не сталкивался... Правда, под XP давно уж не работаю. А какая версия MSVS? 2010? Сервиспаки-апдейты все накатил (как для системы, так и для MSVS)?
2008. Service Pack'и никакие не накатывал и даже не знал о их существовании... А где их можно скачать?
Записан
AGhost
Забанен
Тайный советник
*********

Карма: 600
Offline Offline

у пользователя уже 2 предупреждения
Сообщений: 6890


90027_veteran.gif


Награды
« Ответ #5 : 14 Июль 2012, 19:57:11 »

2008. Service Pack'и никакие не накатывал и даже не знал о их существовании... А где их можно скачать?
На microsoft.com, логично? Улыбка
Вот различные даунлоады для VS2008 - http://search.microsoft.com/en-us/DownloadResults.aspx?q=visual%20studio%202008
Вот SP1 для VS2008 - http://www.microsoft.com/en-us/download/details.aspx?id=13276 (если надо русский, там язык надо поменять).

А вообще чтобы их не искать и всегда иметь последние обновления, нужно чтобы был включен Windows Update И винда должна быть активирована, естественно, чтобы WU опознавал ее как легальную.

ЗЫ. Ну и я бы порекомендовал все-таки VS2010 SP1...
Записан

Прощайте!
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC
rss | wap
Valid XHTML 1.0! Valid CSS!