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

Objective-C

Войти
Регистрация
Восстановить пароль
 
lowlol
2 / 2 / 2
Регистрация: 02.12.2012
Сообщений: 102
#1

EXC_BAD_ACCESS(code=2, address=0x5) - Objective-C

24.11.2013, 23:22. Просмотров 998. Ответов 7
Метки нет (Все метки)

пытаюсь написать программу, которая переводит из 10 в двоичную сс
создал класс core где описал одну функцию
вот код:
core.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
#import <UIKit/UIKit.h>
 
@interface Core : UIView
{
    @public
    NSInteger *input;
}
 
-(NSString*) convertToBinary:(NSInteger*) inputNumber;
 
@end
core.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#import "Core.h"
 
@implementation Core
 
- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code
    }
    return self;
}
 
-(NSString*) convertToBinary:(NSInteger*) inputNumber
{
    int k = 0;
    NSInteger temp = *inputNumber; //при компиляции ругается здесь
    NSString *returnString;
    while (k == 0)
    {
        temp = temp % 2;
        if (temp < 2)
        {
            k = 1;
            if (temp == 1)
            {
                returnString = [NSString stringWithFormat: @"%@1", returnString];
            }
            if (temp == 0)
            {
                returnString = [NSString stringWithFormat: @"%@0", returnString];
            }
        }
        if (temp % 2 == 0)
        {
            returnString = [NSString stringWithFormat: @"%@0", returnString];
        }
        if (temp % 2 == 1)
        {
            returnString = [NSString stringWithFormat: @"%@1", returnString];
        }
        
    }
    return returnString;
}
 
/*
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect
{
    // Drawing code
}
*/
 
@end
viewcontroller.h
Objective-C
1
2
3
4
5
6
7
8
9
10
#import <UIKit/UIKit.h>
 
@interface INViewController : UIViewController
@property (weak, nonatomic) IBOutlet UILabel *labelAnswer;
- (IBAction)buttonGetAnswer:(id)sender;
@property (weak, nonatomic) IBOutlet UITextField *textFieldInput;
 
 
 
@end
viewcontroller.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#import "INViewController.h"
#import "Core.h"
 
@interface INViewController ()
 
@end
 
 
 
@implementation INViewController
 
@synthesize labelAnswer;
@synthesize textFieldInput;
 
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}
 
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
 
- (IBAction)buttonGetAnswer:(id)sender {
    Core *example = [[Core alloc]init];
    NSInteger * myInt = [textFieldInput.text intValue];
    labelAnswer.text = [example convertToBinary: myInt];
    
}
@end
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2013, 23:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос EXC_BAD_ACCESS(code=2, address=0x5) (Objective-C):

EXC_BAD_ACCESS(code=1, address=0x68) - Objective-C
Здравствуйте, товарищи. У меня беда! Изучаю учебник &quot;Objective-C и программирование для Mac OS X и iOS&quot; Скотта Кнастера. Не знаю,...

Ошибка EXC_BAD_ACCESS - Objective-C
поместил в массив 100 значений-при запуске тупо выбрасывает,пишет: EXC_BAD_ACCESS

EXC_? (11) (code=0, subcode=0x0) - Objective-C
Всем привет. Я всего пару месяцев изучаю Objective-C. Написал свое приложение, все было замечательно пока приложение не начало...

Foursquare api периодически возвращает code 200 - Программирование iOS
Периодически приходит в ответ code:200. Для одной координаты нормальный ответ пришел, для другой и последующих code:200. Подскажите в чем...

Signal: Segmentation fault (11) Signal code: Address not mapped (1) - Debian Linux
Всем доброго здоровья! Имеется параллельная программа решения алгоритма Гаусса-Зайделя. Указанная программа выпоняется на компьютере...

access violation at address 40009720 in module 'rtl60.bpl'. read of address - C++ Builder БД
Где может быть проблема?String alphabet1=Edit1-&gt;Text,command,way,answer=&quot;&quot;; char *alpha1=alphabet1.c_str(); int...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
25.11.2013, 07:18 #2
Цитата Сообщение от lowlol Посмотреть сообщение
пытаюсь написать программу, которая переводит из 10 в двоичную сс
создал класс core где описал одну функцию
вот код:
Вы молодец, что пытаетесь. Создали, описал, что дальше?
И зачем наследоваться от UIView?
lowlol
2 / 2 / 2
Регистрация: 02.12.2012
Сообщений: 102
25.11.2013, 08:47  [ТС] #3
Дальше хотел потестить как работает функция и по кнопке выводить в лэйбл переведенное число, взятое из текстфилда. Сам не знаю как получилось, что он от UIView унаследовался, это как-то могло вызвать эту ошибку?
Монфрид
1194 / 1004 / 153
Регистрация: 07.03.2012
Сообщений: 3,243
Завершенные тесты: 2
25.11.2013, 09:32 #4
ставьте брейкпоинты и смотрите, где вылетает
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
25.11.2013, 09:41 #5
Objective-C
1
NSInteger temp = *inputNumber; //при компиляции ругается здесь
Правильно ругается.

Objective-C
1
2
NSInteger * myInt = [textFieldInput.text intValue];
    labelAnswer.text = [example convertToBinary: myInt];
Так:
Objective-C
1
2
NSInteger myInt = [textFieldInput.text intValue];
    labelAnswer.text = [example convertToBinary: myInt];
Затем,
Objective-C
1
2
3
4
5
-(NSString*) convertToBinary:(NSInteger*) inputNumber
{
    int k = 0;
    NSInteger temp = *inputNumber; //при компиляции ругается здесь
    NSString *returnString;
Так:
Objective-C
1
2
3
4
5
- (NSString*)convertToBinary:(NSInteger) inputNumber
{
    int k = 0;
    NSInteger temp = inputNumber; //при компиляции ругается здесь
    NSString *returnString = nil;
lowlol
2 / 2 / 2
Регистрация: 02.12.2012
Сообщений: 102
25.11.2013, 19:26  [ТС] #6
спасибо, а почему там не должно быть указателей?
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
26.11.2013, 08:13 #7
Потому что у вас есть значение, которое вернул метод intValue, возвращаемое значение которого не является указателем.
albert102
-21 / 1 / 0
Регистрация: 30.10.2013
Сообщений: 53
27.11.2013, 17:33 #8
Цитата Сообщение от lowlol Посмотреть сообщение
спасибо, а почему там не должно быть указателей?
беретн энциклопедию по objective c и читаете первые 250 страниц
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2013, 17:33
Привет! Вот еще темы с ответами:

Access violation at address in module. Read of address при скачивании файла - Delphi
Код программы: unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,...

Access violation at address . in module 'DFWEDIT.DLL'. Read at address - Delphi
все было нормально, был открыт делфи, потом не знаю чем спровоцировано, но началась какая то хрень: не снималось выделение с текста, с...

Ошибка: Access violation at address 00474918 in module read of address - Delphi
когда добовляю вот этот код в программу Application.CreateHandle; Application.ShowMainForm := FALSE; ...

Access violation at address 00404083 in module 'Projectl.exe'. Read of address 00000000. - C++ Builder
Кинул на форму PasswordDlg, в главной форме вверху вписал #include &quot;PassWord.h&quot; и на формкриэйт главной формы вписал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
27.11.2013, 17:33
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru