小编Kyu*_*yuu的帖子

将指针重置为文件的开头

我怎样才能重置指向命令行输入或文件开头的指针.例如,我的函数是从文件中读取一行并使用getchar()将其打印出来

    while((c=getchar())!=EOF)
    {
        key[i++]=c;
        if(c == '\n' )
        {
            key[i-1] = '\0'
            printf("%s",key);
        }       
    }
Run Code Online (Sandbox Code Playgroud)

运行之后,指针指向EOF im假设?如何让它再次指向文件的开头/甚至重新读取输入文件

即我输入(./function <inputs.txt)

c string pointers

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

无法在 Mac 上的“127.0.0.1”(61) 上连接到 MySQL 服务器

在创建 mysql 连接时遇到一些麻烦。mysql 实例在系统首选项中运行,我已确保 mysql 配置文件位于正确的位置(测试设置已通过)。当我进入测试数据库连接时,我在所有三个部分都得到红叉。(打开数据库连接,获取服务器版本,获取服务器操作系统)。运行 mac 10.10.2。将连接名称设置为 home 主机名 127.0.0.1,端口设置为 3306,用户名设置为 root,密码设置为我的计算机 root 密码,默认架构也设置为 home。有任何想法吗?

mysql macos mysql-workbench

9
推荐指数
3
解决办法
4万
查看次数

malloc结构中的数组

我正在尝试malloc在结构中的数组,但我运行程序时不断收到分段错误.

这个compares功能只是我正在测试的东西,所以它不应该成为问题的一部分

typedef struct {
    char *string;
} prod_t;

int
main(int agrc, char **argv){
    int i = 0;
    prod_t *c = NULL;

    char str2[100] = "abcd";
    c->string = (char *) malloc( 5 * sizeof(char));
    strcpy(c->string,str2);

    compares(c->stock,str2,i);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c arrays malloc struct

8
推荐指数
2
解决办法
7959
查看次数

C - 如何在数组中存储多个字符串

想知道如何在数组中存储不同的字符串.例如,用户将输入'qwe',然后程序将其存储在数组变量[0]中.输入另一个字符串然后将其存储为变量[1],依此类推

int
main(int argc, char *argv[]) {
    char variable[1000];
    int i;

    printf("enter a variable\n");
    scanf("%s", variable);
    for (i = 0; ??? ;i++) {


        printf("The variable entered was: %s\n",variable[i]);
    }
return 0;
Run Code Online (Sandbox Code Playgroud)

我是C新手,所以我不知道我在做什么.但这就是我到目前为止所提出的,并想知道我是否可以得到一些帮助填补其余的谢谢!

c arrays string

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

如何将csv文件转换为python中的列表列表

我希望能够将csv文件转换为列表列表,其中包含每个列表的列值.例如:

6,2,4
5,2,3
7,3,6
Run Code Online (Sandbox Code Playgroud)

[[6,5,7],[2,2,3],[4,3,6]]
Run Code Online (Sandbox Code Playgroud)

我只是设法打开文件,只有成功打印成行

with open(input,'rb') as csvfile:
        csv_file = csv.reader(csvfile)

        header = csv_file.next() 

        raw_data = csv_file
Run Code Online (Sandbox Code Playgroud)

python csv list

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

指向另一个struct内部的struct内的数组

如何访问位于另一个结构内部的结构内部的数组/其他类型的数据.这是我到目前为止所尝试的,它的出现c并没有宣布.我知道我可以声明c,prod_t *c但它失败了我试图做的事情的目的,因为它不存在于root(a_tstruc)内部.

typedef struct {
    char *name;
} prod_t;

typedef struct {
    prod_t *c;
} a_t;



int
main(int agrc, char **argv){
    a_t *root = malloc(sizeof(a_t));
    root->c=malloc(sizeof(prod_t));

    c->name = malloc( 5 * sizeof(char));
    strcpy(c->name, "abc");

    printf("%s",root.c->name);



    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c arrays struct

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

malloc和realloc数组提供意外输出

当输入为'1 2 3 4 5 6 7 8 9 10 11'时预期输出应与输入相同.然而输出是'1 2 3 4 5 6 7 8 9 10 -1850774484'.仅在输入的整数超过10时才会发生.我的realloc系列在哪里出错了

#include <stdio.h>
#include <stdlib.h>

#define INITIAL_SIZE 10

int
main(int argc, char **argv){
    int i = 0, num, size = 0, n = INITIAL_SIZE;
    int *A;

    A = malloc(n * sizeof(int));

    if(A == NULL){
        printf("OUT OF MEMORY\n");
        exit(EXIT_FAILURE);
    }

    while(scanf("%d",&num) == 1 && getchar()!='\n'){
        A[i] = num;
        i++;
        size++;
        if (size >= n){
            n = n * 2;
            A = …
Run Code Online (Sandbox Code Playgroud)

c arrays malloc realloc

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

如何在结构中保存任意数量字符的数组

理解指针以及如何将它们与函数一起使用时遇到很多麻烦.尝试编写一个函数,它接受任意大小的字符数组并将其保存在struct.This是我尝试但得到seg错误.

#define LENGTH 50

typedef struct{
    char *pass;
    int length;
}pass_t;

void createNewPassword(pass_t *password);

int main(int argc, char *argv[]) {
    pass_t *password=NULL;

    createNewPassword(password);
    printf("%d",password->length);
}


void
createNewPassword(pass_t *password){
    char c;
    int i, n=LENGTH;

    if (!(password->pass=malloc((n+1)*sizeof(char)))) {
        printf("Out of memory, exiting.\n");
        exit(EXIT_FAILURE);
    }

    printf("Enter a new password: ");
    while((c=getchar())!='\n'){
        if (i>=n){
            n *= 2;
            if (!(password->pass=realloc(password->pass, 
            (n+1)*sizeof(char)))) {
                printf("Out of memory, exiting.\n");
                exit(EXIT_FAILURE);
            }
        }
        password->pass[i++]=c;
    }
    password->pass[i+1]='\0';
    password->length=i;
}
Run Code Online (Sandbox Code Playgroud)

c pointers

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

标签 统计

c ×6

arrays ×4

malloc ×2

pointers ×2

string ×2

struct ×2

csv ×1

list ×1

macos ×1

mysql ×1

mysql-workbench ×1

python ×1

realloc ×1