小编gro*_*k12的帖子

测试bash函数返回值的正确方法是什么?

我想在if语句中测试一个bash函数返回值,如下所示:

if [[ func arg ]] ; then …
Run Code Online (Sandbox Code Playgroud)

但我收到错误消息,如:条件二进制运算符预期.

这样做的正确方法是什么?

是吗:

 if [[ $(func arg) ]] ; then ...
Run Code Online (Sandbox Code Playgroud)

bash function

56
推荐指数
4
解决办法
8万
查看次数

GCC警告:C99中函数'puts'的隐式声明无效

我开始Zed Shaw的学习C艰难的方式.我已经下载了XCode和命令行工具.但是当我编译第一个程序时:

int main(int argc, char *argv[]) {
     puts("Hello world."); 
     return 0;
 }
Run Code Online (Sandbox Code Playgroud)

我收到这个警告:

ex1.c:2:1:警告:C99中函数'puts'的隐式声明无效[-Wimplicit-function-declaration]

该程序可以正确编译和执行.

我正在使用OSX 10.8.3.输入'gcc -v'给出:

使用内置规格.目标:i686-apple-darwin11配置:/private/var/tmp/llvmgcc42/llvmgcc42-2336.11~182/src/configure --disable-checking --enable-werror --prefix =/Applications/Xcode.app/Contents /Developer/usr/llvm-gcc-4.2 --mandir =/share/man --enable-languages = c,objc,c ++,obj-c ++ --program-prefix = llvm- --program-transform-name =/^ [cg] [^ .-]*$/s/$/ - 4.2/--with-slibdir =/usr/lib --build = i686-apple-darwin11 --enable-llvm =/private/var/tmp /llvmgcc42/llvmgcc42-2336.11~182/dst-llvmCore/Developer/usr/local --program-prefix = i686-apple-darwin11- --host = x86_64-apple-darwin11 --target = i686-apple-darwin11 - with-gxx-include-dir =/usr/include/c ++/4.2.1线程模型:posix gcc版本4.2.1(基于Apple Inc. build 5658)(LLVM build 2336.11.00)

请帮忙.

macos gcc

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

如何在命令行中输入tab char?

在交互式bash终端中,如何输入制表符?例如,如果我想使用sed将"_"替换为我想使用的标签:

echo $string | sed 's/[_]/TAB/g'
Run Code Online (Sandbox Code Playgroud)

其中TAB表示Tab键.这不是交互式的shell脚本,当我按Tab键时,我没有任何字符和铮铮声.我也尝试了,\t但它只将t放在字符串而不是标签中.

注意这是mac osx.

macos bash

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

获取除第一个之外的bash数组的所有元素

我有一个索引的bash数组,我想使用像"$ {a [@]}"这样的表达式,除非我希望它不包含[0].我能想到的最好的是:

j=0
for i in "${a[@]}"
do
    b[j]=${a[++j]}
done
Run Code Online (Sandbox Code Playgroud)

然后使用"$ {b [@]}".有没有更好的办法?

arrays bash

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

是否使用GNU sed在正则表达式中转义(和)

我注意到这个网站上有几个帖子说用gnu sed你应该使用()正则表达式而不是\(\).但后来我查看了gnu sed手册,看到他们指定了这个\(并且\)必须使用.这是怎么回事?

regex bash gnu sed

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

7
推荐指数
3
解决办法
9537
查看次数

int*p应该是long int*p吗?

我正在通过阅读K&R并进行练习来学习c.我现在在第5章处理指针.我不明白为什么声明:

int *p;
Run Code Online (Sandbox Code Playgroud)

不是:

long int *p;
Run Code Online (Sandbox Code Playgroud)

因为*p包含一个地址,并且不能保证int类型的变量足够大以容纳一个大地址.还是有吗?

c

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

OS X:是否可以查看标准 C 库的源代码?

我想检查一下代码。我已经搜索了我的 Mac、Stack Overflow 和互联网,但我找不到答案。也许他们不会将此代码放在 Mac 上。谁能让我直截了当?

c macos c-standard-library

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

如何printf始终打印一列的char

当我打印一个%c格式的字符并且字符不像"\ 0"那样无法打印时,就没有打印输出列.如果我使用%1c则相同.或%1.1c.有没有办法强制printf输出'\ 0'的列?

我正在做一些大型的printf,我希望列匹配.

c printf

3
推荐指数
1
解决办法
660
查看次数

gcc产生.o但是bash说未知的命令

编辑:我已经解决了几个被指出的事情,但真正的问题仍然没有解决.

这个bash脚本:

set -vx

/usr/bin/llvm-gcc-4.2 -ansi -g -o mytest mytest.c 
ls -l mytest
./mytest
file mytest
Run Code Online (Sandbox Code Playgroud)

产生这个输出:

/usr/bin/llvm-gcc-4.2 -ansi -g -o mytest mytest.c 
++ /usr/bin/llvm-gcc-4.2 -ansi -g -o mytest mytest.c
ls -l mytest
++ ls -l mytest
-rwxr-xr-x  1 jimslager  wheel  37496 May 27 17:26 mytest
./mytest
++ ./mytest
error: unknown command ./mytest
file mytest
++ file mytest
mytest: Mach-O 64-bit executable x86_64
Run Code Online (Sandbox Code Playgroud)

我已经从我已经使用了几个月的更大的东西中提取了这个,但从未见过像这样的结果.gcc如何生成没有错误或警告的对象,但对象未知?

我会发布test.c如果有人问,但它很长,我的问题在我看来是独立于test.c中的内容.

编辑:这是代码.对不起,这么久了.

/* Test Exercise 5-10: Write the program myexpr, which evaluates a reverse Polish expression …
Run Code Online (Sandbox Code Playgroud)

c bash gcc

3
推荐指数
1
解决办法
450
查看次数

定义我自己的命令

我正在尝试在MacVim中定义自己的命令,将ac语句或语句范围转换为注释.所以我把它放在我的vimrc中:

command -range Com :<line1>,<line2>s?^.*$?/*&*/?
Run Code Online (Sandbox Code Playgroud)

如果我只输入:Com来评论当前行,它工作正常.但是,如果我输入类似于:Com 3 5以便将第3行到第5行转换为注释,我总会收到以下错误消息:

E488: Trailing characters
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

vim macvim

3
推荐指数
1
解决办法
166
查看次数

为什么ls"〜/ Music/iTunes/iTunes Media/Audiobooks"失败了?

这是bash 3.2.为什么

ls "~/Music/iTunes/iTunes Media/Audiobooks"
Run Code Online (Sandbox Code Playgroud)

失败?

引号是否应该允许嵌入空间?

编辑:它失败并显示以下错误消息:

ls:〜/音乐/ iTunes/iTunes媒体/有声读物:没有这样的文件或目录

bash

0
推荐指数
1
解决办法
54
查看次数

标签 统计

bash ×7

c ×4

macos ×3

function ×2

gcc ×2

arrays ×1

c-standard-library ×1

export ×1

gnu ×1

macvim ×1

printf ×1

regex ×1

sed ×1

vim ×1