C/C++
文章平均质量分 51
灰灰的云深无迹
我就是我,是颜色不一样的烟火,天空海阔,要做最坚强的泡沫
展开
-
Xcode Message from debugger: Error 1 Program ended with exit code: -1
使用Xcode编译时,报如上错误。主要原因是证书管理引起的,因为Xcode所登录的账号是非付费开发者账号,不能正常编译(吐槽:以前是没有限制的,只要是开发者账号就能运行测试代码,现在不行。苹果在这真的是想尽一切办法捞钱!!!),既然以前可以,现在不行,只需要改一下工程文件配置就可以了选中target -> general可以看到需要修改对应账号和配置证书。如果下面的证书改成如下效果是完全可以运行且断点调试的但是Apple没有给我们这个选项修改工程源文件Xcode的工程文件xxx.xcodepro原创 2022-06-06 20:01:43 · 945 阅读 · 1 评论 -
C头文件的作用(转)
在 C语言家族程序中,头文件被大量使用。一般而言,每个C++/C程序通常由头文件(header files)和定义文件 (definition files)组成。头文件作为一种包含功能函数、数据接口声明的载体文件,用于保存程序的声明(declaration),而定 义文件用于保存程序的实现 (implementation)。原创 2014-02-17 10:08:42 · 1278 阅读 · 0 评论 -
strcpy,snprintf,memcpy的区别
strcpy 无疑是最合适的选择:效率高且调用方便。 snprintf 要额外指定格式符并且进行格式转化,麻烦且效率不高。 memcpy 虽然高效,但是需要额外提供拷贝的内存长度这一参数,易错且使用不便;并且如果长度指定过大的话(最优长度是源字符串长度 + 1),还会带来性能的下降。其实 strcpy 函数一般是在内部调用 memcpy 函数或者用汇编直接实现的,以达到高效的目的。因此,使用 memcpy 和 strcpy 拷贝字符串在性能上应该没有什么大的差别。原创 2014-02-17 09:58:16 · 1596 阅读 · 0 评论 -
C语言运行程序的存储区域
代码段(Code or Text):代码段由程序中的机器码组成。在C语言中,程序语句进行编译后,形成机器代码。在执行程序的过程中,CPU的程序计数器指向代码段的每一条代码,并由处理器依次运行。 只读数据段(RO data):只读数据段是程序使用的一些不会被更改的数据,使用这些数方式类似查表式的操作,由于这些变量不需要更改,因此只需要放置在只读存储器中即可。 已初始化读写数据段(RW data):已初始化数据是在程序中声明,并且具有初值的变量,这些变量需要占用存储器的空间,在程序执行时它们需要原创 2014-02-17 10:04:30 · 1466 阅读 · 0 评论 -
内存分配方式有几种
内存的分配方式有几种?内存的分配方式有几种?答:一、从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如。二、在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。三、从堆上分配,亦称动态内存分配。转载 2014-02-17 10:12:01 · 1571 阅读 · 0 评论 -
atoi和itoa的实现
#include #include #include long __cdecl atol(const char *nptr){int c;long total;int sign;while ( isspace((int)(unsigned char)*nptr) )++nptr;c = (int)(unsigned char)*nptr++;sign = c;原创 2014-02-17 10:26:48 · 1111 阅读 · 0 评论 -
给一个字符串,例如”ababc",要求返回"ab"。因为"ab”连续重复出现且最长。用C/C++语言写一个函数完成该算法,给出复杂度
void GetSub(char* str){char *p,*q,*temp;p = str;q = p + 1;int len = 0;//记录连续重复子串的长度int max = 0;//记录连续重复子串的最大长度char data[100];//临时数组,用于保存最长重复子串 while(*p != '\0'){temp = p;while(原创 2014-02-17 10:34:46 · 2665 阅读 · 0 评论