小编mst*_*agg的帖子

无法将类型'int'隐式转换为'System.Collections.Generic.List <QuickTest.Stock>'

我有以下代码:

static void Main(string[] args)
    { 
        List<Stock> ticker = new List<Stock>();
        ticker.Add(new Stock("msft"));
        ticker.Add(new Stock("acw"));
        ticker.Add(new Stock("gm"));

        ticker = ticker.OrderBy(s => s.Name).ToList();

        foreach (Stock s in ticker)
        {
            Console.WriteLine(s.Name);
        }

        Console.WriteLine("\n");
        ticker = ticker.RemoveAll(s => s.TickerSymbol == "gm");

        foreach (Stock s in ticker)
        {
            Console.WriteLine(s.Name);
        }
    }
Run Code Online (Sandbox Code Playgroud)

Stock是一个具有字符串属性TickerSymbol和Name的对象.它还具有双重属性Price,ChangeDollars和ChangePercent.

我写的第二个LINQ语句是在消息中抛出错误,"不能将类型'int'隐式转换为'System.Collections.Generic.List'".我很困惑'int'类型来自何处以及如何修复此错误,因为我不在程序中的任何位置使用任何int值.

我对LINQ也很新,这是我第一次使用它.这个错误很可能是LINQ的一些复杂性的结果,我不知道.

任何人都知道为什么会发生这种错误以及如何解决它?

c# linq collections list

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

在C中返回字符串的正确方法

我有以下代码:

char* get_address_string(PACKAGE* pkg){
    char *c;
    sprintf(c, "%02x:%02x:%02x:%02x:%02x:%02x", pkg->address[0], pkg->address[1], 
        pkg->address[2], pkg->address[3], pkg->address[4], pkg->address[5]);
    return c;
}
Run Code Online (Sandbox Code Playgroud)

代码工作正常.但是,我知道这不是在C中返回字符串的正确方法.我收到警告"c在此函数中使用未初始化".

在C中编写此函数的正确方法是什么?

c string pointers

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

如何处理C中的大量数字

我正在用C编写RSA加密算法.我不打算在任何地方投入生产,主要是因为我可以扩展我对加密的理解.

我如何处理RSA产生的大量数字?即使用像103这样的相对较小的私钥执行解密,我仍然有处理这样的事情的问题:

67 ^ 103 mod 143 =(1.21816096336830017301951805581 x 10 ^ 188)mod 143

存储多个大小的最佳方法是什么?有没有办法使用标准库?.

c encryption algorithm

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

向 Django Admin 添加新页面

我正在寻找有关如何向 django 管理界面添加全新页面的信息。我需要添加一个视图,允许管理员更改现有文本文件的内容。该视图需要存在于现有的 django 管理应用程序中。我正在使用 django 1.9。

我找到了有关扩展现有页面但未添加全新页面的信息。这可能吗?

python django

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

无限循环和指针

我是C的新手.我熟悉Python,Java,C#.因此,我遇到指针问题.

我试图使用结构在C中实现链表.截至目前,该程序创建了根成员,然后再添加一个成员以获得2个链接成员的列表.然后它调用print方法,该方法应遍历每个项目并打印它们.不幸的是,该程序陷入了无限循环,似乎是打印成员 - >数据地址而不是数据本身.

正如我之前所说,我熟悉一些OOP语言.这个问题令人沮丧,因为一个简单的链表是我应该能够在几分钟内完成的.有帮助吗?代码如下.

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

struct Member{
    int data;
    struct Member *next;
};

struct Member *createMember(int i){
    struct Member *new;
    new = malloc(sizeof(struct Member));
    new->data = i;
    return new;
}

void print(struct Member *root){
    struct Member *current = root;
    while(current->next != NULL){
        printf("%i, ", current->data);
        current = current->next;
    }
    printf("%i", current->data);
}

main(){
    struct Member *root; 
    root = createMember(15);
    root->next = createMember(12);
    print(root);
}
Run Code Online (Sandbox Code Playgroud)

c pointers linked-list

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

标准 C 函数名称

标准 C 函数的缩写方式有什么理由吗?例如,malloc()是“内存分配”的缩写。sprintf()是“字符串打印格式”。这些名称都不能很好地告诉您该函数的实际用途。我从来没有想到这些缩写函数名称有多么可怕,直到最近我不得不教一个新实习生其中许多函数。

当语言被开发时,有什么理由malloc()被选择memAllocate()或者类似的吗?我最好的猜测是它们更类似于 UNIX 命令,但这感觉不是正确的答案。

c

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

退出儿童过程

我有以下代码.它由父进程和两个子进程(生产者和消费者)组成.生产者接受用户输入并将其传递给消费者,消费者总结了已经发生的元音总数.父进程只是监听两个子进程,如果它们由于某种原因而停止,则重新启动它们.当用户输入'p'时,生产者进程退出,当接收到包含'y'的字符串时,消费者进程停止.

我遇到的问题是_exit()生产者进程中的函数调用不会导致进程终止._exit()消费者流程中的函数调用按预期工作.为什么消费者进程在生产者函数没有正确终止时?

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <signal.h>

int main(){
    pid_t c_p, c_c;
    int p[2];
    pipe(p);
    c_p = fork(); 
    if(c_p > 0) c_c = fork();

    for(;;){
        // Producer Process
        if(c_p == 0){
            char c[20];
            printf("%s", "Enter a string: \n");
            fgets(c, 20, stdin);
            if(c[0] == 'p' && strlen(c) == 2) _exit(1);
            close(p[0]);
            write(p[1], c, (strlen(c) + 1));
        }

        // Consumer Process
        else if(c_c == 0){
            int j;
            static int a = 0, e …
Run Code Online (Sandbox Code Playgroud)

c linux

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

这个简单的C代码发生了什么?

我正在自学C语言.我有以下代码,通过char向前和向后打印字符串char:

#include<stdio.h>
#include<string.h>

main(){
    char *str; 
    fgets(str, 100, stdin);
    //printf("%i", strlen(str));
    int i;

    for(i = 0; i < strlen(str) - 1; i++){
        printf("%c", str[i]);
    }
    for(i = strlen(str); i > -1; i--){
        printf("%c", str[i]);
    }
}
Run Code Online (Sandbox Code Playgroud)

运行时,它给我以下输出(假设我输入"hello"):

cello
ollec
Run Code Online (Sandbox Code Playgroud)

另外,如果我取消注释第7行代码,我得到以下输出(假设我输入"hello"):

6 ?
Run Code Online (Sandbox Code Playgroud)

对于我的生活,我无法弄清楚我正在做什么导致输出中的第一个字符发生变化.在第二个例子中,我知道字符串长度为6,因为'h'+'e'+'l'+'l'+'o'+'\ 0'= 6.这很好,但是在哪里锹符号来自?为什么只打印其中一个?

对我来说很明显,我对这里发生的事情有一些基本的误解,我无法在其他地方找到任何这方面的例子.任何人都可以解释这里出了什么问题吗?

c string

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

标签 统计

c ×6

pointers ×2

string ×2

algorithm ×1

c# ×1

collections ×1

django ×1

encryption ×1

linked-list ×1

linq ×1

linux ×1

list ×1

python ×1