ios-转换UITextField ( field.text) NSString *

问题描述

转换UITextField ( field.text) NSString *

需要转换NSString* strchar* ch,这样做是为了将其当做函数的参数使用,str是在UITextField获取的。

void CUserSession::Login (char *pUsername, char *pPassword)

首先使用ch = [str UTF8String];之后,

得到错误:

Cannot initialize a parameter of type 'char *' with an rvalue of type 'const char *'

后来改为这样ch = (const uint8_t *)[str UTF8String];

得到错误:

Cannot initialize a parameter of type 'char *' with an rvalue of type 'const uint8_t *' (aka 'const unsigned char *')

解决方案

这个问题的原因是[str UTF8String]返回的是 const char * 的结果,
而Login函数接收的参数是char*类型的。
强制转化一下,将[str UTF8String]前面加上(char *)

解决方案二:

可以的话应该将 void CUserSession::Login (char *pUsername, char *pPassword) 的参数声明为const,如果该函数不会去修改指针指向的值的话

时间: 2024-11-03 04:51:54

ios-转换UITextField ( field.text) NSString *的相关文章

iOS中UITextField 使用全面解析

 //初始化textfield并设置位置及大小   UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)];   //设置边框样式,只有设置了才会显示边框样式   text.borderStyle = UITextBorderStyleRoundedRect; typedef enum {     UITextBorderStyleNone,      UITextBorderStyle

iOS深拷贝与浅拷贝、NSString内存分配

copy与retain的区别:          1)copy是创建一个新对象,retain是创建一个指针,引用对象计数加1.Copy属性表示两个对象内容相同,新的对象retain为1 ,与旧有对象的引用计数无关,旧有对象没有变化.copy减少对象对上下文的依赖.          2)retain属性表示两个对象地址相同(建立一个指针,指针拷贝),内容当然相同,这个对象的retain值+1也就是说,retain 是指针拷贝,copy 是内容拷贝. ? 1 2 3 4 5 6 7 8 9 10

iOS中 通知中心Text (实例)

版权声明:本文为博主原创文章,未经博主允许不得转载. [objc] view plain copy    指定根视图 [objc] view plain copy self.window.rootViewController = [RootViewController new];   方法实现: [objc] view plain copy #import "RootViewController.h"   #define kScreenHeight [UIScreen mainScre

iOS中 NSString的几种常用方法 韩俊强的博客

要把 "2011-11-29" 改写成 "2011/11/29"一开始想用ios的时间格式,后来用NSString的方法搞定. 1.创建NSString字符串 NSString 与 char* 最大的区别就是 NSString是一个objective对象,而char* 是一个字节数组.@+"字符串 " 这个符号为objective-c NSString 字符串常量的标准用法,char* 创建的时候 无需添加@ - (void)viewDidLoa

详解iOS应用UI开发中的九宫格坐标计算与字典转换模型_IOS

九宫格坐标计算 一.要求 完成下面的布局 二.分析 寻找左边的规律,每一个uiview的x坐标和y坐标. 三.实现思路 (1)明确每一块用得是什么view (2)明确每个view之间的父子关系,每个视图都只有一个父视图,拥有很多的子视图. (3)可以先尝试逐个的添加格子,最后考虑使用for循环,完成所有uiview的创建 (4)加载app数据,根据数据长度创建对应个数的格子 (5)添加格子内部的子控件 (6)给内部的子控件装配数据 四.代码示例 复制代码 代码如下: // //  YYViewC

IOS UI学习教程之设置UITextField各种属性_IOS

UITextField是IOS中非常常用的一个控件,用来接收用户输入信息,完成应用和用户的交互.它的主要属性设置如下: //初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)]; //设置边框样式,只有设置了才会显示边框样式 text.borderStyle = UITextBorderStyleRoundedRect; typedef enu

iOS 中 使用UITextField格式化银行卡号码的解决方案_IOS

今天做格式化银行卡,避免重复造轮子,找度娘查了下,看到一个不错的实现方式,记录下来,并附带实现思路 #pragma mark - UITextFieldDelegate UITextField键入字符后调用 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { //拿到为改变前的字符串 NSStri

iOS 通过(lame)将录制音频转换成Mp3

转载请注明出处,保留原帖地址及作者署名. Url:http://blog.csdn.net/ysy441088327/article/details/7392842#reply Author:余书懿 为了达到 iPhone 与 Android 实现音频互通. 那么Mp3格式的音频文件再好不过了. 至于能够转换成Amr 是最好,10秒 的 一个Amr文件 只有5K左右的大小. 非常适合移动设备的数据传输 这里主要用到lame,一款非常棒的Mp3音频编码器.    那么在转换之前呢? 就需要先录制好

Swift中NSString与String转换

var text: NSString = NSString(CString: titleLabel!.text!.cStringUsingEncoding(NSUTF8StringEncoding)!, encoding: NSUTF8StringEncoding) <p class="p1">titleLabel<span class="s1">!.</span><span class="s2">