ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > С/С++, C#, Delphi, .NET, Asm
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #2361  
Старый 16.02.2009, 20:02
4y4o
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме:
179857

Репутация: 4
По умолчанию

ничё не получилось
 

  #2362  
Старый 16.02.2009, 20:05
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Это как?
 

  #2363  
Старый 16.02.2009, 20:40
Chaak
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме:
5321514

Репутация: 3313


Отправить сообщение для Chaak с помощью ICQ
По умолчанию

#include <winows.h>

CreateDirectory();
 

  #2364  
Старый 17.02.2009, 00:24
xismyname
Познающий
Регистрация: 07.09.2008
Сообщений: 79
Провел на форуме:
272452

Репутация: 10
По умолчанию

Цитата:
Сообщение от rudvil  
Всем здрасьте)
Возникла проблема =[ можно ли в пользовательской функции сделать ретурн массива,пример:
Код:
string test()
{
    string names[1];
    names[0] = "test";
    return names;
}
при таком раскладе пишет ошибку(неверный параметр в ретурне как-то так)
пробовал делать так:
Код:
string[] test()
{
    string names[1];
    names[0] = "test";
    return names;
}
и так:
Код:
string test()
{
    string names[1];
    names[0] = "test";
    return names[];
}
всеравно пишет ошибку...
Собственно и вопрос как правильно реализовать ретурн массива?
А string это случайно не класс ?
В C твоя проблема решается так :

Код:
char *func(void)
{
    char *str = (char*)malloc( sizeof(char) * 16 );
    // do something...
    // end return pointer to char
   return str;
}
В как в C++ не могу точно сказать, но можно по пробовать такой же вариант как в C.
 

  #2365  
Старый 17.02.2009, 00:40
rudvil
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
Провел на форуме:
2066562

Репутация: 86
По умолчанию

2xismyname, боюсь это не то что я имел ввиду, но все равно спасибо)
Сейчас приведу пример(не рабочий) но покажу хотябы свиду что я имел ввиду...
Код:
string test()
{
    string data[3];
    data[0] = 'Hello1';
    data[1] = 'Hello2';
    data[2] = 'Hello3';
    /*Что-то типо такого и затем эту переменную data вернуть т.е. сделать return*/
    return data;//А вот тут пишет ошибку =[
}
 

  #2366  
Старый 17.02.2009, 02:00
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
Провел на форуме:
3941248

Репутация: 668


Отправить сообщение для Doom123 с помощью ICQ
По умолчанию

попробуй обьявить массив до вызова ф-ции и передавай в ф-цию массив как параметр в ф-цию и возвращять не надо ничё т.к вроде массив этот как указатели ... тоесть имя массива это указатель на первую ячейку последовлольности ячеек памяти (сам не понел чё сказал ) чёт типо того =)
 

  #2367  
Старый 17.02.2009, 12:50
rudvil
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
Провел на форуме:
2066562

Репутация: 86
По умолчанию

Цитата:
Сообщение от Doom123  
попробуй обьявить массив до вызова ф-ции и передавай в ф-цию массив как параметр в ф-цию и возвращять не надо ничё т.к вроде массив этот как указатели ... тоесть имя массива это указатель на первую ячейку последовлольности ячеек памяти (сам не понел чё сказал ) чёт типо того =)
Смысл понял), но не прокатывает... пишет такуюже ошибку =[
Код:
c:\users\rudvil\documents\visual studio 2008\projects\learn_arrays\learn_arrays\arrays.cpp(40) : error C2664: 'std::basic_string<_Elem,_Traits,_Ax>::basic_string(std::basic_string<_Elem,_Traits,_Ax>::_Has_debug_it)' : cannot convert parameter 1 from 'std::string [3]' to 'std::basic_string<_Elem,_Traits,_Ax>::_Has_debug_it'
1>        with
1>        [
1>            _Elem=char,
1>            _Traits=std::char_traits<char>,
1>            _Ax=std::allocator<char>
1>        ]
1>        Constructor for struct 'std::basic_string<_Elem,_Traits,_Ax>::_Has_debug_it' is declared 'explicit'
1>        with
1>        [
1>            _Elem=char,
1>            _Traits=std::char_traits<char>,
1>            _Ax=std::allocator<char>
1>        ]
Хм, а это вообще можно делать в C++?...
 

  #2368  
Старый 17.02.2009, 13:32
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
Провел на форуме:
3941248

Репутация: 668


Отправить сообщение для Doom123 с помощью ICQ
По умолчанию

Код:
#include <string>
#include <iostream>

void test(std::string []);

int main()
{
	std::string test2[3];
	test(test2);
	std::cout << test2[2];

	return 0;
}

void test(std::string test[])
{
	test[0] = "data";
	test[1] = "data2";
	test[2] = "data3";
}
всё отлично коплится
 

  #2369  
Старый 17.02.2009, 13:39
rudvil
Участник форума
Регистрация: 25.08.2008
Сообщений: 187
Провел на форуме:
2066562

Репутация: 86
По умолчанию

2Doom123 наигромаднейшее тебе спасибо!!!! все работает на ура)))
 

  #2370  
Старый 17.02.2009, 14:39
4y4o
Познающий
Регистрация: 22.01.2007
Сообщений: 40
Провел на форуме:
179857

Репутация: 4
По умолчанию

#include "stdafx.h"
#include "windows.h"
#include <iostream>
int main()
{
STARTUPINFOA si;
PROCESS_INFORMATION pi;
ZeroMemory( &si, sizeof(si) );
ZeroMemory( &pi, sizeof(pi) );
SECURITY_ATTRIBUTES secat;
secat.nLength = sizeof(SECURITY_ATTRIBUTES);
secat.bInheritHandle = TRUE;
HANDLE newin, writein;
CreatePipe(&newin,&writein,&secat,0);
si.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOWNORMAL;
si.hStdInput=newin;
GetStartupInfoA(&si);
si.cb;
CreateProcessA(NULL, "cmd.exe", NULL, NULL, TRUE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);
DWORD bytes;
char command[100] = "mkdir 1254655553";
WriteFile(writein, command, 100, &bytes, NULL);
std::cin.get();
}

Дяди! Патчему папка не создаётся? бот в шоке ))
 
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ