Objective-C(基础篇)九大基本类型

九大经典算法 while (i < j && [temArr[j] intValue] >= [key intValue]) { // 右边j位大于基数位置不变。if (i == j) { // i、j位置重合结束本次循环,当key是目前最小的数时,会出现i=j的情况,arr[i] = key // i和j重合时本轮循环结束,将key放入i的位置(则左侧数都比key小,右侧数都比key大)if (i == j) { // 当key是目前最大的数时(m[j]的前面),会出现i=j的情况。未排序元素继续重复排序操作。 阅读详情

来自一个有强迫症的处女座程序员–小河


一、
int 整型 整数类型 占位符:%d 占4个字节
long 长整形 占位符:%ld (32位) 占4个字节 (64位)占8个字节
long long 长长整形 占位符:%lld 占8个字节
short 短整型 占位符:%d 占2个字节
Byte 字节型 占位符:%d 占1个字节
char 字符型 占位符:%c 占1个字节 char f = ‘A’;
BOOL 布尔型 占位符:%d 占1个字节
float 单精度浮点型 占位符:%f 占4个字节 默认保留6位小数 %.2f保留两位小数
double 双精度浮点型 占位符:%lf 占8个字节 默认保留6位小数 %.2f保留两位小数

例子:
这里写图片描述
/*
一、 定义一个变量的固定格式:类型 变量名;
二、变量名的命名规范:
1.驼峰命名法,首字母小写,其他单词,每个单词的首字母大写;
2.命名要有意义;
3.不能出现特殊字符;
*/

这里写图片描述

这里写图片描述

这里写图片描述

二、内存换算
1TB = 1024GB
1GB = 1024MB
1MB = 1024KB
1KB = 1024Byte
1B = 8bit(位)

三、
这里写图片描述

芯片硅前验证技术与驱动工程师实战指南 硅前验证是芯片开发流程中的关键环节,通过pre-silicon simulation等技术手段在流片前验证设计正确性。其核心技术包括软件仿真、FPGA原型验证和硬件仿真器解决方案,涉及Linux驱动开发、芯片架构理解和波形分析等核心技能。作为连接芯片设计与系统集成的桥梁,硅前验证能早期发现设计缺陷,节省数百万美元流片成本。以Cadence Palladium为代表的硬件仿真器,通过专用服务器系统实现比纯软件方案快100-1000倍的仿真速度,为驱动工程师提供完整的外设模型验证环境。掌握硅前验证技术可显著提升 阅读详情

相关推荐

Vite与Webpack路径配置大不同:从Vue2迁移到Vue3必须知道的public目录使用技巧

本文详细解析了Vite与Webpack在public目录路径配置上的核心差异,为Vue2迁移到Vue3的开发者提供实用指南。重点对比了两种构建工具的资源处理逻辑,给出典型编译警告的解决方案,并分享路径适配表与高级优化技巧,帮助开发者高效完成技术栈升级。

weixin_30836759的博客 485

Objective-C语言的数据类型

在 Objective-C 中,程序员可以根据需要定义自定义数据类型。通过定义类和结构体,程序员可以创建更复杂的数据结构。Objective-C 提供了丰富的数据类型,通过这些数据类型,程序员能够构建灵活且复杂的程序结构。基本数据类型、对象数据类型、集合类型以及自定义数据类型共同构成了 Objective-C 的数据类型体系。在编写 Objective-C 程序时,理解各种数据类型的特点及其内存管理机制,将有助于编写出高效、易维护的代码。数据类型的使用不仅影响程序的性能,也直接影响到可读性与可维护性。

2501_90406397的博客 354

IB网络下不同租户业务隔离方案

IB(InfiniBand)网络隔离可以在不同的通信模式下实现,其中包括 IPoIB(IP over InfiniBand)通信模式。在 IPoIB 模式下,InfiniBand 网络可以承载 IP 数据包,使得基于 IP 的应用程序能够在 InfiniBand 网络上进行通信。在这种情况下,IB 网络隔离通常指通过配置 Partition Key(PKey)来实现不同的租户或应用程序之间的网络隔离。然而,IB 网络隔离并不仅限于 IPoIB 模式。

guganly的专栏 1527

Objective-C 中常见的数据类型

通用对象指针类型,可以指向任何 Objective-C 对象。:表示可变字符串,可以动态修改字符串内容。:表示方法选择器类型,用于表示方法的名称。:表示可变数组,可以动态添加、删除元素。:表示类对象指针类型,用于表示类的类型。:表示不可变数组,包含一组有序的对象。:表示可变字典,可以动态修改字典内容。:表示不可变字典,包含一组键值对。:表示逻辑类型,取值为。:表示单精度浮点数。:表示双精度浮点数。:表示不可变字符串。

lcannal的博客 1014

告别‘报错马拉松’:一份保姆级的Ubuntu 20.04编译OpenWrt 15.05环境配置与问题修复清单

本文提供了一份详细的Ubuntu 20.04编译OpenWrt 15.05的环境配置与问题修复指南,帮助开发者告别‘报错马拉松’。从基础环境搭建到典型报错分类与修复方案,再到高阶问题的深度修复,全面覆盖编译过程中可能遇到的各类问题,并提供自动化补丁脚本和Docker环境固化方案,确保编译过程高效顺畅。

weixin_33230433的博客 295

手把手教你用C++和NI-VISA写个简易仪器上位机(附QT工程配置)

本文详细介绍了如何使用C++和QT框架结合NI-VISA驱动开发跨平台仪器控制上位机软件。从Ubuntu环境配置、VISA通信核心架构设计到QT界面与业务逻辑解耦,提供了完整的实战指南和代码示例,帮助开发者快速构建专业级仪器控制程序。

weixin_42522374的博客 273

scanf() printf() 常用格式

%d   短整形,一般占两个字节 %u   无符号短整形 %ld  长整形,一般占四个字节 %c   字符型 %s    字符串 主要用在输入输出函数:scanf(),printf()里 /a:蜂鸣,响铃  /b:回退:向后退一格  /f:换页  /n:换行,光标到下行行首  /r:回车,光标到本行行首  /t:水平制表  /v:垂直制表  //:反斜杠  /':单

luyuncsd123的专栏 2423

NFC门禁卡复制全解析:从M1卡到UID卡的攻防实践

本文深入解析了NFC门禁卡的安全机制与攻防实践。从M1卡基于Crypto1算法的原理漏洞讲起,详细阐述了利用Proxmark3等工具进行侦听、破解密钥及使用UID卡进行复制的完整攻击链条。同时,为防御方提供了从升级CPU卡、启用全扇区认证到部署多因子验证的系统性防护策略,旨在帮助管理员构建更稳固的物理安全防线。

weixin_29182481的博客 1401

Object-C中的格式说明符

%@:             Objective-C对象,印有字符串返回descriptionWithLocale:如果于的话,或描述相反.CFTypeRef工作对象,返回的结果的CFCopyDescription功能.(这个翻译有问题建议按照自己的理解方式理解)。 %%:             为'%'字符; %d,%D,%i:   为32位整型数(int); %u,%U:

七彩祥云至尊宝 3307

从《视觉SLAM十四讲》到项目实战:一文读懂拓扑地图与语义地图为何是服务机器人的未来

本文探讨了服务机器人地图技术的演进,从传统几何地图到拓扑地图与语义地图的跨越。通过分析栅格地图的局限性和拓扑地图、语义地图的优势,揭示了它们在动态开放环境中的智能应用。文章还介绍了多模态语义融合架构和动态语义更新技术,为服务机器人的未来发展提供了技术路线图。

weixin_30292843的博客 478

Google Play上架:谷歌2024年5月份审核政策改动,审核强度逐步提升

Google Play上架:谷歌2024年5月份审核政策改动,审核强度逐步提升

专业解决各种上架过包问题,专业团队专业处理 3187

Objective-C语法之基本数据类型

本篇博客主要介绍基本数据类型的长度,基本数据类型在Oc的数组中如何时候,还有其他数据类型的相互转换等。 为了演示基本数据类型的例子,我们新建一个iPhone项目类做例子 1、新建项目 为了方便,我们新建一个Single View Application 。 输入项目名称  BaseType Product Name: 指产品名称 ,类似于项目名称。

刚刚在线 1066

华为OD机试真题2025双机位B卷 Python&JS 实现【朋友圈个数】

给定一组朋友关系,统计一下该朋友关系网中的朋友圈个数。 朋友圈的定义:一个朋友圈至少由3个朋友组成,且要求同一个朋友圈中的任意两个人都具有直接的朋友关系。 输入描述 输入一个朋友关系列表,如 Fiends =A.B],[A.C],IB,DI,其中的每一个元素 Friendsi表示 Friends[i][0)和 Friends [i][1] 是朋友关系 先输入一个数字 N 代表关系的总数,后面每条关系一行,两个成员以逗号分隔

MISAYAONE的博客 562

九大编程语言

九大编程语言1. Java2. C3. Python4. C++5. C#6. Ruby7. Objective-C8. PHP9. JavaScript10. 总结 如今 Python、Java、C、C ++、JavaScript 等编程语言五花八门,而各种编程语言也各有优劣,那么,我们该如何去选择? 其实,不同的语言适合于不同的领域 ,以下就九大编程语言的简介、用途、发展趋势等做简单介绍,供...

九霄星河的博客 5292

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

当前九大语言图解

网上的文字介绍天花乱坠,还是图解比较简单明了

半两八斤的博客 1515

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

[转]九大编程语言对比(图文并茂,岗位薪酬)

https://blog.youkuaiyun.com/baihuaxiu123/article/details/51760823 图解九种主流编程语言,从Python、Java到Objective-C。码农世界,哪种才是最好的编程语言? 这9张信息图囊括了九种主流编程语言:Python、Java、C、C++、JavaScript、C#、Ruby、PHP以及Objective-C。对于每种编程语言,大...

数据齿轮 3126

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

最好的编程语言?美国出数据了,Java吃香,PHP败了

编码江湖,长期以来就不存在什么武林盟主,相反的,各类编程语言则在自己擅长的领域独领风骚,谁要敢挑头立盟主,就会死于满天的口水之中。如今一组来自美国的数据,却再次引起了“世界上最好编程语言”之争。 Python的人气不断上涨,上手难度却很低,它可以用于web开发、视频游戏开发、桌面GUIs和软件开发等,近年来的人工智能,也将Python推到了一个新的高度。 Python有很多优点,它易于学习,拥有很广泛的工具及功能库,Python还将随着物联网技术的普及而进一步发展。目前Rasp-berry Pi等新

jmysql的博客 715

retos-programacion-2023 第 35 期挑战解析:用 50 种语言编写「Primeros Pasos」基础语法速查指南

本文以 MoureDev 社区 2023 年每周编程挑战([README.md](https://link.gitcode.com/i/6263f7e4a5e1d33ce6fe4855888e46b7))中的第 35 期挑战「Primeros Pasos」为对象,完整解读其题目清单(Hola mundo、变量与原始类型、常量、条件分支、数据结构、循环、函数、类、异常处理九大类),并对照开源仓库 [

gitblog_00281的博客 182

Infer 命令手册详解:静态分析器的统一入口与全局选项体系

Infer 是一个面向 Java、C/C++/Objective-C/Objective-C++ 等语言的静态分析器:给定一组源文件与一条构建命令,它会输出一份潜在问题清单。本篇技术指南以官方 `infer` 命令手册([website/docs/man-infer.md](https://link.gitcode.com/i/8a664ed58efe654db3b34d557c3c829a) 对

gitblog_00376的博客 308

最好的编程语言?美国出数据了,Java吃香,objc有“钱”途

编码江湖,长期以来就不存在什么武林盟主,相反的,各类编程语言则在自己擅长的领域独领风骚,谁要敢挑头立盟主,就会死于满天的口水之中。如今一组来自美国的数据,却再次引起了“世界上最好编程语言”之争。 最好的编程语言?美国出数据了,Java吃香,objc有“钱”途Python的人气不断上涨,上手难度却很低,它可以用于web开发、视频游戏开发、桌面GUIs和软件开发等,近年来的人工智能,也将Python推...

weixin_34221332的博客 278

九大角度全方位对比Android、iOS开发

九大角度全方位对比Android、iOS开发 摘要:即便Android市场份额已经超过80%,对于开发者来说,使用哪一个平台做开发仍然很难选择。本文从开发环境、配置、UX设计、语言、API、网络、分享、碎片化、发布等九个方面把Android和iOS平台做一次PK。 对于许多创业者来说,选择Android还是iOS永远是一个棘手的问题。最近,有数据显示Androi

木叶57的博客 713

iOS-Debug-Hacks入门教程:从零开始学习iOS高级调试技巧

iOS-Debug-Hacks是一个专注于iOS项目开发过程中高级调试技巧的开源项目,涵盖三方库动态调试、静态分析和反编译等领域。对于iOS开发者而言,掌握这些调试技巧能极大提升解决复杂问题的能力,让你在开发过程中更高效地定位和修复bug。 ## 为什么调试对iOS开发至关重要 🚀 调试在iOS开发中占据着举足轻重的地位。研究表明,经验丰富的程序员调试找出Bug的时间大约是缺乏经验程序员的1

gitblog_00888的博客 210
上一篇: Xcode-关于切换窗口的快捷键
下一篇: Objective-C(基础篇)基础知识
小小的河
博客等级 码龄10年 3粉丝 6原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值