Skip to main content

Posts

Showing posts from June, 2008

C and C++ Cheat Sheets

Нашел в сети несколько шпаргалок по C/C++: 1, 2, 3, 4, 5, 6, Unicode-enabling Microsoft C/C++ Source Code, Understanding C++/Quick Reference, C++ Containers Cheat Sheet.

Хотя, надо признаться, что шпаргалки от Amy Hoy по Rails выглядят значительно симпатичнее ))

back|track>> 3 released

20 июня Max Mozer, один из разработчиков linux дистрибутива Backtrackсообщил в своем блоге о выходе релиза 3-й версии этого penetration testing дистрибутива. Скачать его можно здесь. Must Have всем, интересующимся вопросами взлома и защиты. Во всяком случае если не пригодится, то не помешает уж точно =).

5 программ, с которыми я работаю ежедневно

via Begemot получил вышеназванную эстафету и задумался поскольку таких программ достаточно много и выбрать из них наиболее часто используемые не такая уж и простая задача. Дабы не повторяться лишний раз, то браузер и мессенджер остались теми же )). Помимо них использую в порядке убывания частоты:
Notepad++ - простой, компактный, удобный и быстрый текстовый редактор, поддерживающий плагины, подсветку синтаксиса и множество других полезных и приятных мелочей, да в добавок еще и распространяемый под лицензией GNU GPL. Его я, в основном, использую для написания кода и правки текста.Remote Desktop Client - использую для доступа к тестовому энвайронменту, который развернут на другой машине.TortoiseCVS - для чего используется, объяснять думаю не нужно. Хотя возможны вариации: TortoiseSVN, TortoiseHg - иногда хочется посмотреть на исходники какого-нить проекта, а они либо в svn либо в mercurial.Download Master - менеджер закачек, с тех пор как я для себя его открыл он экономит мне множество вр…

Задачка на собеседование

Многие у себя в блогах публикуют разные головоломные задачки, а тут как раз сегодня у сотрудника возникла ситуация над которой мы некоторое время помедитировали, пока не пришел nimblemag и не обьяснил. Код, собственно, ниже. Код рабочий. Обьяснить почему работает.

#include <cstdlib>
#include <iostream>
using namespace std;
int main (int argc, char** argv){
cout<<argv[argc-1]<<endl
<<argc[argv-1]<<endl;
return EXIT_SUCCESS;
}

Ответ ниже белым по белому (да, такой способ я у Эльдара Мусаева подсмотрел) чтоб посмотреть выделяем текст
===отсюда===
На самом деле все просто и вытекает из комутативности операции сложения:

#include <cstdlib>
#include <iostream>
using namespace std;
int main (int argc, char** argv){
cout<<(*argv+(argc-1))<<endl<<((argc-1)+*argv)<<endl;
cout<<*(argv+(argc-1))<<endl<<*((argc-1)+argv)<<endl;
return EXIT_SUCCESS;
}

===досюда===
Отдельное Спасибо White Knight за нахождение ошибки…

Разгребая закладки - Fighting the Lemmings

Большинство новостей из мира Open Source я получаю через канал новостей сайта OpenNet.ru. Обычно если новость меня чем-то заинтересовала, то она оседает у меня в закладках, а так как я интересуюсь очень многим, то можно представить во что превращается со временем панель закладок огненной лисы. Посему периодически я их разгребаю, попутно просматривая. Так и в этот раз увидел у себя в закладках ссылку на статью Fighting the Lemmings, о разработке переносимого ПО. Мысли, в принципе, практически идентичны этим, что лишний раз подтверждает их правильность.
И еще одно - я чуть ранее писал про мультик Big Buck Bunny, созданный при помощи Blender, так вот, его полную версию уже можно скачать или посмотреть на youtube