информационная безопасность
без паники и всерьез
 подробно о проекте
Rambler's Top100Spanning Tree Protocol: недокументированное применениеСетевые кракеры и правда о деле ЛевинаПортрет посетителя
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Простое пробивание рабочего/провайдерского... 
 400 уязвимостей в процессорах Snapdragon 
 Яндекс неуклюже оправдался за установку... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / блог / архив / 2006
АРХИВ
архив
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
2004
2003
2002
archive




The Bat!

студенческо-программистское
29.12.06 21:29 // оригинал
Всякий раз, принимая лабы/зачеты/экзамены, я узнаю массу нового о программировании вообще и о С++ в частности. Казалось бы, все возможные извращения с кодом, характерные для начинающих, за эти годы должны быть посчитаны и надоесть, но всякий раз находится что-нибудь новенькое. Этот семестр принес два новых перла, тщательно воспроизведенных в паре десятков слизанных друг у друга лаб.

Номер раз, частотный анализ.
На входе некий буфер, нужно посчитать расклад по символам. Первый шаг нормальный, заводится массив из 256 элементов, в котором будут лежать счетчики- скажем, int charcount[256]. И на что я натыкаюсь, предполагая увидеть нечто вроде charcount[pBuff[i]]++, где pBuff[i] - очередной символ?
Барабанная дробь:

for(int j = 0; j<256; j++)
{
if(j == pBuff[i])
charcount[j]++;
}


Номер два, доступ к i-му элементу vector'а, скажем, vector<data*> a.
Банальное a[i]? Щас, правильный ответ:

vector<data*>::iterator ii = a.begin();
for(int j = 0; j<a.size(); j++)
{
if(j == i)
break;
ii++;
}
data* pData = *ii;

   
теги: студень  |  обсудить  |  все отзывы (0)  |  обсудить в LJ [981]
назад «  » вперед

аналогичные материалы
викиисключительное // 20.05.20 21:20
закопать стюардессу // 19.11.15 18:53
роботокурсовое // 18.06.15 03:18
турнирнокурсовое // 10.02.15 17:11
преподавательское // 15.03.13 21:46
шарпоплюсноучебное // 31.10.12 18:24
лабораторное // 14.10.12 00:01
третьекурсное // 21.08.12 17:08
координатное // 20.06.12 15:22
стильноименованное // 13.06.12 16:38
 
последние записи
яблочноучебное // 11.09.20 18:34
яблочнопереключальное // 26.07.20 17:07
яблочноденежное // 14.07.20 23:06
яблочноотличное // 14.07.20 15:37
памятное // 18.06.20 00:59
ГПБ vs TV // 06.06.20 21:32
викиисключительное // 20.05.20 21:20
гуглемитное-2 // 14.04.20 16:01
гуглемитное // 10.04.20 12:12
микрофонное // 27.03.20 17:49


авто венгрия вырвиглаз германия глюки греция гуглемап драйверы египет железки журнализм империя добра испания италия кино кипр клоуны книги криворучки оспорт португалия программизм сайт софт стрим студень турция уродцы фото франция цацки чехия читалки android bq e51 eeepc from facebook hd2 hpc htc ipad iphone onlime vista windows 10 windows 7 windows 8 yota



Rambler's Top100
Рейтинг@Mail.ru



  Copyright © 2001-2020 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach