小编Lau*_*elS的帖子

Objective-C,来自Console的简单字符串输入?

老实说,我做了a)使用关键词进行搜索,然后b)在询问之前阅读"类似标题的问题".

此外,我试图让这个问题更简洁,但在这种情况下,我很难做到这一点.如果你觉得这个问题过于冗长,我就明白了.只是不要试图回答.

我正在尝试编写非常简单的Objective-C程序,它们反映了我的入门java类中的基本作业.我在夏天完成了一本客观的书,现在我想在objective-c中做很多练习题,同时我还要练习java练习题.我正在避开Objective-c GUI环境,只想专注于使用该语言一段时间.关于如何解决问题,我还有很多东西需要学习.

我正在从我的java作业复制的程序是标准类型.我要求用户通过控制台输入数字和输入字符串.我能够使用扫描f在此处找到的示例从控制台获取数字输入.(我将在下面列出几个代码行).但我不确定如何获取控制台输入并将其存储在字符串(NSString)中.我正在尝试学习使用apple文档并找到一个扫描类型命令的参考,但我无法弄清楚如何使用该命令.似乎很可能是

scanCharactersFromSet:(NSCharacterSet )scanSet intoString:(NSString*)name;

这是我理解和工作的

int age = 0;
NSLog (@"How old are y'all?");

scanf("%d", &age);


NSLog (@"\n Wow, you are %d !", age);
Run Code Online (Sandbox Code Playgroud)

但我不明白如何拾取名为'name'的NSString.我认为我应该把我的'name'作为指针,因为这个类是NSString.

(顺便说一下,我确实尝试使用scanf来拾取字符串,但是编译器不喜欢我尝试将scanf与name一起使用.它说我不应该使用'scanf',因为它期望不同类型的数据.我不确定我在哪里找到数据类型'i'.我正在查看我的文本以寻找不同的想法.我猜测scanf与'scanfloat'有关,它显然处理数字数据,所以这不是很大惊喜)

我意识到'scanf'不是正确的命令(我真的不明白为什么我甚至无法在苹果文档中找到scanf - 也许它是C?)

我猜测scanCharactersFromSet可能是正确的用法,但我只是不明白你是如何弄清楚命令中的位置.我想我倾向于通过实例学习,而我还没有找到一个例子.我想通过阅读文档来弄清楚如何正确学习.但我还没有.

NSString* name ;

scanf("%i", &name);

//scanCharactersFromSet:(NSCharacterSet *)scanSet intoString:(NSString **)name;
Run Code Online (Sandbox Code Playgroud)

...

我的书的目的是让我进入一个gui环境,所以它不涉及输入.

感谢您给我的任何指示.

月桂树

string input objective-c

18
推荐指数
3
解决办法
4万
查看次数

自学XCode/Objective-C:'静态'似乎并不意味着我认为*它意味着什么

我正在研究Holzner所着的"Visual Quick Start,Objective-C"一书中的例子.我花了很多时间在每个例子上,调试代码是更快的部分,然后逐步告诉自己为什么每行代码都工作,每行中的每个单词做什么,并决定作者使用一种做法的原因事情与另一个.然后我用自己的一些故事重复这个例子.这似乎是从结构化程序员转变为类似oop的好方法.它适用于这些示例,因为他一次只做一个概念.(我已经完成了另外两本书的工作,这个想法对我来说不起作用.一旦我对某些东西感到困惑,我只是感到困惑.在更长,更复杂的例子中有太多的变数.)

在当前示例(第137页)中,Holzner使用"静态"一词.我查看了本书中的示例来确定这个词的含义.我还阅读了Bjarne Stroustrups的C++编程语言书中的描述(我理解C++和Objective-C并不完全相同)

(Bjarne Stroustup p 145)使用静态变量作为内存,而不是"可能被其他函数访问和破坏"的全局变量

这就是我理解的"静态"意味着结果.我认为这意味着静态变量的值永远不会改变.我认为这意味着它就像一个恒定值,一旦你将它设置为1或5,它就无法在运行期间被改变.

但是在这个示例代码中,静态变量的值确实发生了变化.所以我真的不清楚"静态"意味着什么.

(请忽略我留下评论的'后续问题'.我不想改变我的运行中的任何内容,并冒着创建阅读错误的风险

谢谢你能给我的任何线索.我希望我没有在这个问题上加入太多细节.

月桂树

.....

Program loaded.
run
[Switching to process 2769]
Running…
The class count is 1
The class count is 2

Debugger stopped.
Program exited with status value:0.
Run Code Online (Sandbox Code Playgroud)

.....

//
//  main.m
//  Using Constructors with Inheritance
//Quick Start Objective C page 137
//

#include <stdio.h>

#include <Foundation/Foundation.h>

@interface TheClass : NSObject

// FOLLOWUP QUESTION - IN last version of contructors we did ivars like this …
Run Code Online (Sandbox Code Playgroud)

objective-c

3
推荐指数
1
解决办法
2578
查看次数

IOS故事板:恢复ID就像故事板ID一样?

我正在使用Steinberg的iBook'IOS SToryboards'转换到使用故事板.在第30页上,作者的教程显示将Identity Inspector中的"Storyboard ID"设置为redScene的值.在图书图形中,这显示为"识别"下的第一个字段

在XCode 4.6.1中,我没有看到"Storyboard ID",但我确实看到了一个名为"Restoration ID"的字段,我将其设置为值'redScene'.然后我在ViewController.m中使用该值

 - (IBAction)redButtonTapped:(id)sender {
     UIViewController *redViewController = [[self storyboard]


 instantiateViewControllerWithIdentifier:@"redScene"];
     [self presentViewController:redViewController animated:YES completion:nil];

 }
Run Code Online (Sandbox Code Playgroud)

但是,当我运行我的应用程序时,我在我引用'redScene'的行上得到一个错误.我设置了一个异常断点,我明白了

(LLDB)

我不确定在左侧调试器显示的值中要查看什么,但我知道可能我的代码不知道'redScene'是谁.

我开始学习使用苹果文档,但我仍然不确定如何找到正确的区域来阅读.我尝试在那里搜索"恢复ID"和"故事板ID",但我没有得到任何结果.

我在这篇文章中提供了足够的信息吗?

谢谢你的任何想法

月桂树

storyboard ios

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

objective-c ×2

input ×1

ios ×1

storyboard ×1

string ×1