小编Car*_*rum的帖子

char*a,*b; 什么类型(ba)以及如何打印它?

{
  char *a, *b;

  printf("%lx\n",(b-a));
}
Run Code Online (Sandbox Code Playgroud)

通常可行,实际上,我无法想象它会在32位或64位机器上发出警告或失败.但对于ANSI C和尺寸感知,这是正确的做法吗?我希望这些代码可以在每个平台上运行,包括非Unix和嵌入式系统.

c pointers stdio

5
推荐指数
3
解决办法
1581
查看次数

":>文件"VS">文件"

":> file""> file"之间有什么区别吗?

$ : > file.out
$ ls -l file.out
-rw-rw----   1 user    user             0 Mar 18 21:08 file.out
$ > file.out
$ ls -l  file.out
-rw-rw----   1 user    user             0 Mar 18 21:08 file.out
Run Code Online (Sandbox Code Playgroud)

bash shell sh touch

5
推荐指数
1
解决办法
319
查看次数

逐个添加不同的字符到NSString?

我正在使用thsi函数从字符串中检索不同的字符,并向它们添加5以显示相应的字符,例如.'a'显示'f'和'h'显示'm'..但问题是我无法将这些字符添加到字符串中,我可以使用它来显示像'fm'...可以任何人救命??继承人代码strResult(mutablestring)仅获得null.

str=@"John";

int a=[str length];

for(i=0;i<a;i++)
{
  char ch=[str characterAtIndex:i];
  ch=ch+5;
  temp=[NSString stringWithFormat:@"%c",ch];
  [strResult appendString:temp];
  NSLog(@"%c",ch);
}
Run Code Online (Sandbox Code Playgroud)

iphone objective-c

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

反汇编Microsoft Visual Studio 2003编译器输出

我看到我认为Microsoft Visual Studio 2003工具输出的目标文件的奇怪行为.该file实用程序告诉我:

asmfile.obj: 80386 COFF executable not stripped - version 30821
Run Code Online (Sandbox Code Playgroud)

对于汇编程序创建的对象,但对于来自C文件的对象,我只得到:

cfile.obj: data
Run Code Online (Sandbox Code Playgroud)

使用Microsoft的dumpbin实用程序和objdump我从cygwin获得的,我可以反汇编程序集生成的文件,但是我从C-built文件的任一实用程序中都得不到有用的结果.

我有几个与这种差异有关的问题:

  1. MSVC2003编译器生成的目标文件格式是什么?
  2. 我该如何反汇编该目标文件?

我对使用AT&T语法进行反汇编特别感兴趣 - 我正在做一个大型源代码库的端口以使其与GCC一起工作,我想使用此方法作为一些内联汇编例程的快捷方式.项目.

编辑:添加更多信息.

当我dumpbin在其中一个文件上运行时,没有给出任何结果:

C:\> dumpbin /disasm Func.obj
Microsoft (R) COFF/PE Dumper Version 7.10.6030    
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file Func.obj

FileType: ANONYMOUS OBJECT
Run Code Online (Sandbox Code Playgroud)

objdump,它给出:

$ objdump -d Func.obj
objdump: Func.obj: File truncated
Run Code Online (Sandbox Code Playgroud)

关于从汇编构建的文件,我得到了合理的结果.

再次编辑:添加命令行信息.

汇编文件使用类似于以下内容的命令行构建:

ml -nologo -W3 -WX -c -coff -FoAssemblyFile.obj -Zi -Cx …
Run Code Online (Sandbox Code Playgroud)

c coff disassembly visual-studio object-files

5
推荐指数
1
解决办法
3606
查看次数

使用tilde获取int的MAX值

我尝试使用tilde获取int的MAX值.但是输出不是我所期望的.当我运行这个:

#include <stdio.h>
#include <limits.h>
int main(){
    int a=0;
    a=~a;
    printf("\nMax value: %d",-a);
    printf("\nMax value: %d",INT_MAX);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我得到输出:

最大值:1

最大值:2147483647

我想,(例如)如果我在RAM中有0000(我知道第一位显示的是数字pozitiv或negativ).在~ 0000 => 1111之后和 - (1111)=> 0111之后,我将获得MAX值.

c c++ memory

5
推荐指数
1
解决办法
4695
查看次数

在可可中下拉视图

我正在寻找一个落在主窗口前面的"下拉"视图.例如,当您在"系统偏好设置" - >"网络"中单击"高级"时,窗口会下降.

如果有人可以指出我在文档方面的正确方向,这将是伟大的.提前致谢.

macos cocoa objective-c nsview nswindow

4
推荐指数
1
解决办法
1853
查看次数

如果getcwd()和getenv("PWD")不匹配,我该怎么办?

我有一个getcwd()用于获取当前工作目录的构建系统工具.这很好,除了有时人们的路径中有空格,构建系统不支持.你认为你可以只做一个符号链接:

ln -s "Directory With Spaces" DirectoryWithoutSpaces
Run Code Online (Sandbox Code Playgroud)

然后开心.但不幸的是,对我来说,getcwd()解决了所有的符号链接.我尝试使用getenv("PWD"),但它没有指向我回来的路径getcwd().我认为我责备make -C不更新环境变量.现在,getcwd()给我一条这样的道路:

/Users/carl/Directory With Spaces/Some/Other/Directories
Run Code Online (Sandbox Code Playgroud)

getenv("PWD")告诉我:

/Users/carl/DirectoryWithoutSpaces
Run Code Online (Sandbox Code Playgroud)

那么 - 是否有任何类似的功能getcwd()无法解析符号链接?

编辑:

我变了

make -C Some/Other/Directories
Run Code Online (Sandbox Code Playgroud)

cd Some/Other/Directories ; make
Run Code Online (Sandbox Code Playgroud)

然后getenv("PWD")工作..如果没有其他解决方案,我可以使用它.

c macos makefile getcwd getenv

4
推荐指数
1
解决办法
6198
查看次数

如何.bss部分初始化为零

我们知道.bss包含未初始化的变量.如果在c代码中,程序员在使用它们之前初始化变量.然后.bss在执行C代码之前不必为零.

我对吗?

谢谢

c gcc elf

4
推荐指数
2
解决办法
6008
查看次数

寄存器寻址模式与直接寻址模式

我在试卷中遇到了这个问题.它说,哪种给定的寻址模式更快?为什么?

  1. 注册寻址模式
  2. 直接寻址模式

现在根据我的寄存器寻址模式应该更快,因为寄存器是计算机中最快的存储位置.这是正确答案吗?

请帮忙.谢谢

assembly addressing-mode x86-16

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

汇编(,%eax,4)

如果我的一个命令行说:

jmp   *0x804a180(,%eax,4)
Run Code Online (Sandbox Code Playgroud)

那是什么意思?我特别要求,因为在第一个逗号之前没有值,我不确定地址前的*是什么意思.

assembly att addressing-mode

4
推荐指数
1
解决办法
3722
查看次数