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
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #1171  
Старый 11.06.2008, 10:57
Sirob
Новичок
Регистрация: 07.06.2008
Сообщений: 12
Провел на форуме:
26887

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

groundhog Пишу на C++Builder 6.0. Домой приду - попробую что насоветовали. Останутся вопросы - позадаю. Спасибо.
 

  #1172  
Старый 11.06.2008, 16:37
procedure
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме:
3885269

Репутация: 1158


По умолчанию

Код:
 BOOL GetFile (HINTERNET IN hOpen, // Handle from InternetOpen()
                 CHAR *szUrl,        // Full URL
                 CHAR *szFileName)   // Local file name
   {
       DWORD dwSize;
       CHAR   szHead[] = "Accept: */*\r\n\r\n";
       VOID * szTemp[25];
       HINTERNET  hConnect;
      FILE * pFile;

       if ( !(hConnect = InternetOpenUrl ( hOpen, szUrl, szHead,
             lstrlen (szHead), INTERNET_FLAG_DONT_CACHE, 0)))
       {
         cerr << "Error !" << endl;
           return 0;
       }

       if  ( !(pFile = fopen (szFileName, "wb" ) ) )
      {
           cerr << "Error !" << endl;
          return FALSE;
      }
       do
       {
          // Keep coping in 25 bytes chunks, while file has any data left.
          // Note: bigger buffer will greatly improve performance.
          if (!InternetReadFile (hConnect, szTemp, 50,  &dwSize) )
          {
              fclose (pFile);
             cerr << "Error !" << endl;
            return FALSE;
          }
          if (!dwSize)
              break;  // Condition of dwSize=0 indicate EOF. Stop.
          else
             fwrite(szTemp, sizeof (char), dwSize , pFile);
       }   // do
      while (TRUE);
      fflush (pFile);
      fclose (pFile);
      return TRUE;
   }
Чуваки, у меня вывод в поле Symbol: в цифрах, я так понял в кодах ANSI. А можно ли сделать чтоб вывод был в символах которые я ввел?
 

  #1173  
Старый 11.06.2008, 19:58
Delimiter
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме:
2187381

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

strstr(kod_procedure,"Symbol") дает NULL!
 

  #1174  
Старый 11.06.2008, 23:31
z01b
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме:
2360904

Репутация: 1393


По умолчанию

Цитата:
Сообщение от procedure  
Код:
 BOOL GetFile (HINTERNET IN hOpen, // Handle from InternetOpen()
                 CHAR *szUrl,        // Full URL
                 CHAR *szFileName)   // Local file name
   {
       DWORD dwSize;
       CHAR   szHead[] = "Accept: */*\r\n\r\n";
       VOID * szTemp[25];
       HINTERNET  hConnect;
      FILE * pFile;

       if ( !(hConnect = InternetOpenUrl ( hOpen, szUrl, szHead,
             lstrlen (szHead), INTERNET_FLAG_DONT_CACHE, 0)))
       {
         cerr << "Error !" << endl;
           return 0;
       }

       if  ( !(pFile = fopen (szFileName, "wb" ) ) )
      {
           cerr << "Error !" << endl;
          return FALSE;
      }
       do
       {
          // Keep coping in 25 bytes chunks, while file has any data left.
          // Note: bigger buffer will greatly improve performance.
          if (!InternetReadFile (hConnect, szTemp, 50,  &dwSize) )
          {
              fclose (pFile);
             cerr << "Error !" << endl;
            return FALSE;
          }
          if (!dwSize)
              break;  // Condition of dwSize=0 indicate EOF. Stop.
          else
             fwrite(szTemp, sizeof (char), dwSize , pFile);
       }   // do
      while (TRUE);
      fflush (pFile);
      fclose (pFile);
      return TRUE;
   }
Чуваки, у меня вывод в поле Symbol: в цифрах, я так понял в кодах ANSI. А можно ли сделать чтоб вывод был в символах которые я ввел?
Мдее... я для примера тебе дал. Дальше меняй сам, как тебе нужно.
 

  #1175  
Старый 12.06.2008, 00:06
procedure
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме:
3885269

Репутация: 1158


По умолчанию

Код:
#include <stdio.h>

main()
{
	int c, nl, t, space, n, i, l;
	int array[100];
	nl = c = t = space = n = 0;
	
	
	for (i = 0; i < 100; ++i) {
		array[i] = 0;
	}
	
	i = 0;
	while ((c = getchar()) != EOF) {
		if (c = '\n') {
			printf("\n\tSymbol: ");
			for (l = 0; l < i; ++l) {
				printf("%d ", array[l]);
			}
			printf("\n\tTab: %d\n\tSpace: %d\n\tNumber: %d\n", t, space, n);
			break;
		}
		else if (c = '\t') {
			++t;
		}
		else if (c = ' ') {
			++space;
		}
		else if (c >= '0' && c <= '9') {
			++n;
		}
		else {
			array[i] = c;
			++i;
		}
	}
}
БЛин чуваки я дурак, не тот код скопировал. В этом подскажите пожалуйста в чем может быть проблема. После Symbol: выдаются цифры вместо букв.
 

ps
  #1176  
Старый 12.06.2008, 00:13
Delimiter
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме:
2187381

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

Цитата:
Сообщение от procedure  
Код:
#include <stdio.h>

main()
{
	int c, nl, t, space, n, i, l;
	int array[100];
	nl = c = t = space = n = 0;
	
	
	for (i = 0; i < 100; ++i) {
		array[i] = 0;
	}
	
	i = 0;
	while ((c = getchar()) != EOF) {
		if (c = '\n') {
			printf("\n\tSymbol: ");
			for (l = 0; l < i; ++l) {
				printf("%d ", array[l]); //!!! собака тут!!!!!!!!!!!!!!!!!!
// если хочешь как символ printf("%с ",(char ) array[l]);
// но будешь терять информацию в один байт два байта не впихнуть без потерь
			}
			printf("\n\tTab: %d\n\tSpace: %d\n\tNumber: %d\n", t, space, n);
			break;
		}
		else if (c = '\t') {
			++t;
		}
		else if (c = ' ') {
			++space;
		}
		else if (c >= '0' && c <= '9') {
			++n;
		}
		else {
			array[i] = c;
			++i;
		}
	}
}
БЛин чуваки я дурак, не тот код скопировал. В этом подскажите пожалуйста в чем может быть проблема. После Symbol: выдаются цифры вместо букв.
... переделай на char array[100];

но самой главное что ты массив и не заполняешь!!!!
 

  #1177  
Старый 12.06.2008, 00:22
z01b
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме:
2360904

Репутация: 1393


По умолчанию

procedure, я тебя уже спросил, что ты от кода ждешь????
 

  #1178  
Старый 12.06.2008, 00:32
procedure
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме:
3885269

Репутация: 1158


По умолчанию

z01b-> когда я только дошел до циклов в книге, у меня была задачка скопировать входной поток в выходной с фильтрацией символов. Я ее так и не смог не применяя функций (кроме getchar) и массивов решить, сейчас хотяб так постараюсь решить. Только не помогайте чуваки плиз, если что я вопрос сам задам. Я хочу сам сделать)))
Потом постепенно буду добавлять в эту задачку новые упражнния усложняя ее все более и более.
 

  #1179  
Старый 12.06.2008, 00:34
Delimiter
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме:
2187381

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

дебагером учись пользоваться , сразу увидишь механику ИЗНУТРИ!
 

  #1180  
Старый 12.06.2008, 00:47
procedure
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме:
3885269

Репутация: 1158


По умолчанию

еще вопрос, а как мне нужно полностью массив в char переделать?
int array[100];
переделать вот так:
char array[100];
 
 





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


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




ANTICHAT.XYZ