相关疑难解决方法(0)

什么是好的Linux退出错误代码策略?

我有几个独立的可执行Perl,PHP CLI脚本和C++程序,我需要开发一个退出错误代码策略.其他程序使用我exec()在PHP中创建的包装类调用这些程序.所以,我将能够得到一个错误代码.根据该错误代码,调用脚本将需要执行某些操作.

我做了一些研究,似乎1-254(或者只是1-127)范围内的任何内容都可以是用户定义的错误代码的公平游戏.

我只是想知道在这种情况下其他人如何处理错误处理.

unix linux error-handling

5
推荐指数
2
解决办法
5488
查看次数

如何让fgetc打印循环内文件的所有字符

我正在玩fgetc并且想知道如何让我的循环打印出行部分然后打印前16个字符.

这是我的代码:

int main(int argc, char * argv[])
{
    FILE *fp;

    if((fp = fopen(argv[1], "rb+")) == '\0')
    {
        perror("fopen");
        return 0;
    }

    getchar(fp);

    return 0;
}

void getchar(FILE *fp)
{
    int c;
    size_t linecount = 0;

    while((c = fgetc(fp)) != EOF)
    {
        printf("line : ");
        printf("%c ", c);
        linecount++;

        if(linecount == 16)
        {
            printf("\n");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想我的输出是这样的:

 line: ? 5 d s d a d 0 0 0 0 0 0 0 0 0 0 0
 line: a d …
Run Code Online (Sandbox Code Playgroud)

c fgetc

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

(极端Noob在这里)为什么这个C代码不起作用?

为什么这不起作用,我对编程很新,但我似乎无法弄清楚为什么这不能正常工作.

#include <stdio.h>
#include <math.h>

int main(){
    int num1;
    printf("Enter 1, 2, 3.");
    scanf("%d", &num1);
    if(num1 = 1)
        printf("You entered one");
    else if(num1 = 2)
        printf("You entered two");
    else if(num1 = 3)
        printf("You entered three");
    else
        printf("Invalid");
}
Run Code Online (Sandbox Code Playgroud)

c

-5
推荐指数
2
解决办法
236
查看次数

标签 统计

c ×2

error-handling ×1

fgetc ×1

linux ×1

unix ×1