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

Не могу объявить массив внутри main - ошибка при линковке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ toupper, tolower, strlen и кириллица http://www.cyberforum.ru/cpp-beginners/thread943024.html
Эти три функции не хотят нормально работать с кириллицей. Если им скормить американские литеры, все нормально. Но вот, например, эта программа печатает "тест", а по-идее должна "ТЕСТ". //...
C++ Ошибка предположительно в strncpy(word, p1, len) Есть простенький обучающий пример: #include "stdafx.h" #include <iostream> #include <ctype.h> #include <string.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread943018.html
realloc C++
#include <iostream> using namespace std; int main() { int size=0; cout<<"enter size array: "; cin>>size; int *arr;
C++ Посоветуйте литературу для изучения C++
Хоу, форумчане. Недавно начал изучать с++, сейчас читаю какие-то онлайн курсы, но там только базовая информация. Посоветуйте книгу какуюнибудь хорошую Сейчас изучаю вот эти уроки:...
C++ linker error в dev-c++ http://www.cyberforum.ru/cpp-beginners/thread942988.html
Здравствуйте, я написал этот код, но никак не могу скомпилировать. Писал по книжке. #include <windows.h> #include <gl/glut.h> using namespace std; void init(void) {
C++ Задачи на тему "указатели" Нужны задачки для закрепления темы "указатели". Проходил тему по Шилдту и частично по Девису. Пробовал решать задачи у Дейтела, но они слишком мудреные. подробнее

Показать сообщение отдельно
Raybek
0 / 0 / 0
Регистрация: 24.08.2013
Сообщений: 7

Не могу объявить массив внутри main - ошибка при линковке - C++

24.08.2013, 16:28. Просмотров 977. Ответов 26
Метки (Все метки)

Доброго времени суток!

Я начинающий в С++. Использую gcc в Ubuntu 13.04 x64 bit.

Прохожу сейчас массивы. Заметил одну странность.
При попытке одновременного объвления
- массива внутри main
- и использования printf()
при компиляции выходит ошибка, я как понял линковщика, следующего содержания:
/tmp/ccXzvblP.o.eh_frame+0x13): undefined reference to `__gxx_personality_v0'
collect2: ошибка: выполнение ld завершилось с кодом возврата 1

Если по отдельности или выносить объявление массива до main, то компиляция идет без проблем.

Например:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
 
int a[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17};
 
int main() {
    long int razmer=sizeof(a);
    long int dlina=razmer/sizeof(int);
 
    printf("В массиве 'a' %lu элемент(а,ов) \n",dlina);
 
    printf("Размер массива 'а' равен %lu Бт \n", razmer);
 
    //Выводим содержимое массива "а"    
    for (int i=0; i<dlina; ++i)
    {
        printf("Квадрат числа %u равен %u \n",a[i],a[i]*a[i]);
    };
    
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru