Tag: xcode

OS X上的GCC分配的内存超出预期

我正在使用Mac OS X 10.11.4和Xcode 7.3以及gcc编译器。 我用homebrew下载了valgrind 3.11。 当我用valgrind运行我的C程序时,这是输出 ==4297== ==4297== HEAP SUMMARY: ==4297== in use at exit: 30,208 bytes in 188 blocks ==4297== total heap usage: 265 allocs, 77 frees, 40,286 bytes allocated ==4297== ==4297== LEAK SUMMARY: ==4297== definitely lost: 0 bytes in 0 blocks ==4297== indirectly lost: 0 bytes in 0 blocks ==4297== possibly […]

在Objective-C中保存空白文件

我正在研究一个代码,除其他外,必须保存一个零填充文件。 它可以创建一个10MB到1GB空白的文件。 它必须类似于这个Unix命令: dd if=/dev/zero of=my_image.dsk count=20480 我可以做一个小尺寸的工作: int totalSize = 1024*1024; char buf[totalSize]; strcpy(buf,””); NSData *theData = [NSData dataWithBytes:buf length:sizeof(buf)]; //NSLog(@”%@”, theData); NSLog(@”%lu”, sizeof(buf)); [theData writeToFile:@”/Users/foo/Desktop/my_image.dsk” atomically:YES]; 但是,如果我尝试更大的值(例如1024 * 1024 * 10),它会崩溃。 所以我尝试过: NSFileManager *ddd = [[NSFileManager alloc ] init]; [ddd createFileAtPath:@”/Users/foo/Desktop/my_image.dsk” contents:[NSData data] attributes:nil]; 它创建一个空文件,但不好,因为文件大小为零。 它不应该是零。 我花了好几个小时试图找到答案但没有成功。 我想在Obj-C中做到这一点,但在我疯了之前,C也是一个选择。 拜托,有人给我点亮了! 提前致谢! – 编辑 – […]

在应用程序的末尾获取没有应用程序名称的应用程序路径

我正在使用xcode,并希望获得我的应用程序运行的路径,而路径末尾没有应用程序名称,但我尝试过: printf(“%s\n”, argv[0]); 它给了我正确的路径,我的应用程序运行但它以/我的应用程序名称结束,我该如何删除应用程序名称?

Xcode 4.5字符不在控制台框中显示,使用C语言的scanf()

自从更新到Xcode 4.5以来,我遇到了这个问题。 我在控制台盒子里输入了4555但在控制台盒子里只显示了4 。 我尝试了不同的输入参数,如%d , %f , %c和%s ,都有同样的问题。 我不明白。 怎么解决? 我的源代码是 #include int main() { int input; // insert code here… printf(“Hello, World!\n”); printf(“Please Enter Number : “); scanf(“%d”,&input); getchar(); printf(“Input is : %d”,input); return 0; } 和控制台框显示: >Hello, World! >Please Enter Number : 4 >Input is : 4555

为以前的OS X版本编译C程序

我写了一段使用libfftw3和libaiff外部库的C代码。 代码在我的机器上完美编译和执行,该机器具有所需的库并且运行OS X 10.9 Mavericks。 我正在使用Xcode 5.1编译我的程序,我相信我已正确链接所需的库并提供了头文件等必要的路径(一切都在我的计算机上工作)。 实际上,生成的可执行文件也可以在运行OS X Mavericks的另一台计算机上运行,​​并且还安装了所需的库。 问题 :我正在尝试使用Xcode 5.1编译我的代码以创建一个可执行文件,该可执行文件将在运行OS X 10.8(Mountain Lion)的计算机上运行,​​并且没有安装上述库。 到目前为止,我尝试过很多不同的事情: (1)首先,我将Base SDK保留为OS X 10.9,并将OS X部署目标更改为OS X 10.8并成功编译。 但是当我在运行OS X 10.8的第三台计算机上执行并且没有安装任何一个库时,我收到以下错误: dyld: lazy symbol binding failed: Symbol not found: ___sincos_stret Referenced from: /Users/ec/Desktop/Auto Designer C Program Testing/Auto Designer Expected in: /usr/lib/libSystem.B.dylib dyld: Symbol not found: ___sincos_stret Referenced from: /Users/ec/Desktop/Auto […]

clang:不能使用带有多个-arch选项的’precompiled-header’输出

在编译我的项目时,从Xcode 4.5切换到Xcode 5时,我突然收到此错误消息。 clang: cannot use ‘precompiled-header’ output with multiple -arch options 我的GNU Makefile包含以下片段: define build CC-$(platform)-$(2)?=$(CC-$(platform)) $(bindir)/$(platformdir)-$(2)$($(3)-dirsuffix)/$(1)_%: $(srcdir)/$(1)/%.c $(common) mkdir -p $$(@D) $$(CC-$(platform)-$(2)) $(cflags) $($(3)-cflags) $(CFLAGS) -o $$@ $$^ $($(3)-ldflags) $(LDFLAGS) endef $(foreach library,$(libraries),$(foreach arch,$(archs),$(foreach configuration,$(configurations),$(eval $(call build,$(library),$(arch),$(configuration)))))) 并且$(CC)评估为符号链接到cc 。

链接器命令失败,退出代码1在Xcode中

我在Xcode中编写C程序,我遇到了这个问题: ld: 1 duplicate symbol for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 有什么想法解决它吗? 注意:我昨天刚刚将我的操作系统更新到Mountain Lion。

在Mac OS X mavericks中找不到

我试过(显然是成功的)在mac os x mavericks上安装libpng 。 我下载了最新的1-6-8版本.tar.xz并按照说明操作。 ./configure运行正常 make check除了跳过的png-error之外的所有内容 从我的库libpng开始, sudo make install显然工作正常。 出现。 现在,当我尝试编译我需要编译的C文件时,使用字符串 clang -w -lz -lpng16 libpng_test.c 我收到了错误 fatal error: ‘png.h’ file not found #include 显然它不会编译。 我尝试用homebrew和macports安装它们似乎总是运行正常,但我总是得到同样的错误

如何修复错误格式指定类型’char *’但参数的类型为’char’

我收到一条警告:“Format指定类型’char *’,但参数的类型为’char’”,用于student变量。 我正在将一本书中的代码复制/粘贴到xcode中,我不知道如何解决这个问题。 在控制台中打印的唯一内容是“(lldb)”。 任何建议 #include void congratulateStudent(char student, char course, int numDays) { printf(“%s has done as much %s Programming as I could fit into %d days.\n”, student, course, numDays); } int main(int argc, const char * argv[]) { // insert code here… congratulateStudent(“mark”, “Cocoa”, 5); return 0; }

C中的重音/变音字符?

我刚刚学习了C并得到了一项任务,我们必须将纯文本转换为莫尔斯代码并返回。 (我大部分都熟悉Java,所以请遵守我使用的条款)。 为此,我有一个包含所有字母字符串的数组。 char *letters[] = { “.- “, “-… “, “-.-. “, “-.. “, “.”, “..-.” etc 我写了一个函数来返回所需字母的位置。 int letter_nr(unsigned char c) { return c-97; } 这是有效的,但是分配规范要求处理瑞典语的变形字母åäö。 瑞典语字母与最后用这三个字母的英语相同。 我尝试检查这些,如下: int letter_nr(unsigned char c) { if (c == ‘å’) return 26; if (c == ‘ä’) return 27; if (c == ‘ö’) return 28; return c-97; […]