Форум программистов, компьютерный форум, киберфорум
Наши страницы

qsort - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ текстовый файл http://www.cyberforum.ru/cpp-beginners/thread326898.html
В текстовом файле содержатся положительные целые числа, разделенные пробелами. Перепишите в другой текстовый файл максимальное количество чисел из первого файла, но чтобы их сумма не превышала...
C++ Вывод кириллицы каким компилятором лучше пользоваться.я пользуюсь dev c++, но он в консоле не отображает все что написаное в скобках(тольуо на англиском отображает корректно).пример (i != j) cout << " i ne ravno j\n... http://www.cyberforum.ru/cpp-beginners/thread326892.html
метод класса во внешней функции C++
подскажите как во внешней функции, если в нее как параметр передан элемент класса, вызвать метод класса для этого самого элемента класса? пишу вот это: void ShowZaryad(Chastica A,Chastica...
C++ РАБОТА С ЭКРАНОМ В ГРАФИЧЕСКОМ РЕЖИМЕ
Ребята, целый день решал никак не могу понять почему у меня график не правильно прорисовывается? Написать программу которая строит графики функции y=f(x,a) на интервале -10<=x<=10 аргумента x при...
C++ Считать строку из txt-файла Unicode и преобразовать ее в число - это реально? http://www.cyberforum.ru/cpp-beginners/thread326878.html
Допустим у вас в txt-файле несколько чисел: 309 5 512 Если бы файл был в кодировке ANSI: 1) Вы считали строчку с помощью fgets() 2) Преобразуете полученное с помощью atoi() к числу. Но у...
C++ классы,определение операторов Определите класс Vec4 как вектор из 4-х float. Определите оператор для доступа к элементу вектора. Определите операторы +, - для сложения и вычитания векторов.Определите операторы =. +=. -= для... подробнее

Показать сообщение отдельно
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467

qsort - C++

27.06.2011, 22:49. Просмотров 1049. Ответов 7
Метки (Все метки)

Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <cstdio>
#include <algorithm>
 
int compare(const void *s1, const void *s2)
{
    return strcmp((char *)s1, (char *)s2) < 0;
}
 
#define N 4
 
int main()
{
    const char *words[N] = {"needle", "ascii", "cpp", "ass"};
 
    qsort(words, N, sizeof(char *), compare);
    //std::sort(words, words+4, compare);
 
    for (size_t i = 0; i < N; ++i) {
        printf("%s\n", words[i]);
    }
 
    return 0;
}
На Visual Studio 2008 вывод
такой,
needle
ascii
cpp
ass
то есть последовательность не изменяется, а на g++ переставляется в обратном
порядке.
ass
cpp
ascii
needle
Если qsort закомментировать, а std::sort наоборот раскомментировать, то вывод получается
ожидаемым.
ascii
ass
cpp
needle
Что не так с qsort? Почему она не работает ожидаемым образом?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.