小编Rob*_*vey的帖子

结构内存分配,内存分配应为4的倍数

struct x
{
  char b;
  short s;
  char bb;
};


int main()
{
 printf("%d",sizeof(struct x));
}
Run Code Online (Sandbox Code Playgroud)

输出为:6

我在32位编译器上运行此代码.输出应该是8个字节.

我的解释 - > 1. Char需要1个字节,下一个short需要2的倍数,所以short创建1的填充并占用2个字节,这里已经分配了4个字节.现在唯一的左边的char成员需要1个字节但是因为内存分配是4的倍数所以总内存给出的是8个字节.

c memory struct

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

在我创建一个具有默认值的未使用变量之前,指向结构的指针不起作用

我不太了解 C 编程指针,我尝试在互联网上搜索有关使用与结构相关的简单指针的信息。我有这个简单的程序:

#include <stdio.h>

typedef struct
{
      int ia;
      int ib;
} num;

int main()
{

     num *pn;

     //int a = 4;

     pn->ia = 5;
     printf("Hello, I made it this far!\n");
     pn->ib = 10;
     pn->ia = pn->ib;

     printf("num = %d\n", pn->ia);

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

在我取消注释未使用的整数 'int a = 4;' 之前,此代码不起作用

我在 Windows 10 上使用 gcc 32 位还是 64 位似乎无关紧要。

我想学习以正确的方式做到这一点,我不相信一个未使用的变量应该使它起作用!

c pointers undefined-behavior

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

ASP.NET路由问题

为什么是这样:

http://MySite.com/Project/24/Search/32/Edit/49
Run Code Online (Sandbox Code Playgroud)

比这更受欢迎?

http://MySite.com/Project/24?Search=32&Edit=49
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc routing

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

将字符串转换为float时出错

我有一个关于转换的菜鸟问题.

string Descript1 = ":1:2:3:4:5";
Regex pattern = new Regex("(:)");

foreach (string sub in pattern.Split(Descript1))
{
    if (sub != ":")
    {
        float a = Convert.ToSingle(sub);
    }
}
Run Code Online (Sandbox Code Playgroud)

但是这段代码不断提出错误:"字符串的格式不正确."

有人可以帮帮我吗?

谢谢.

c# regex

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

在java中删除数组中的元素可以将其设置为null吗?

我正在尝试创建一个适用于列表的数组实现的remove方法.我可以将duplicate元素设置为null以将其删除吗?假设列表是有序的.

ArrayList a = new ArrayList[];

public void removeduplicates(){

    for(a[i].equals(a[i+1]){

        a[i+1] = null;

    }
    a[i+1] = a[i];
}
Run Code Online (Sandbox Code Playgroud)

java arrays null list

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

这个代码行在这个包合并算法中意味着什么?

我找到了一个算法Package-Merge

Algorithm(I, X) {
    S is empty;
    for all d, Ld list of items having width 2^d;
    while X > 0 loop 
        minwidth = the smallest term in diadic expansion of X; 
        if I=0 then //is empty 
            return “No solution.” ; 
        else 
            d=the minimum such that L is not empty;
            r=2^d; 
            if r > minwidth then 
                return “No solution.”
            else if r = minwidth then 
                Delete the minimum weight ; 
                X= X - minwidth ;
            end if 
            Pd+1=PACKAGE(Ld) ; …
Run Code Online (Sandbox Code Playgroud)

algorithm

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

我的Lambda表达有什么不对?

我正在尝试用C#编写一个简单的Lambda表达式:

int numElements = 3;
string[]firstnames = {"Dave", "Jim", "Rob"};
string[]lastnames = {"Davidson", "Jameson", "Robertson"};

List<Person> people = new List<Person>();

for(int i = 0 ; i < numElements; i++)
{
    people.Add(new Person { FirstName = firstnames[i], LastName = lastnames[i] });                
}

bool test = people.Contains(p => p.FirstName == "Bob");
Run Code Online (Sandbox Code Playgroud)

我对Lambda表达式以及它们如何工作的理解仍然有点阴暗,我对于为什么这不起作用我很恼火......我试图找出一个列表是否包含一个名字......

.net c# lambda list

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

为什么从网站下载后图片质量会发生变化?

我正在编写解析代码以从网站中提取图像.它基于获取标签并获取图像的源链接.

如果我们以网站BBC为例(新闻文章),他们展示的第一张图片的来源是(链接),但如果我直接打开该链接,图像的质量会发生巨大变化.

我无法理解BBC如何使用相同的链接显示高质量的图片以及我无法通过下载获得相同质量的BBC节目.

你能告诉我如何通过下载获得同样高质量的图片吗?

html html5 parsing image

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

在运行时修改设置并关闭应用程序后,这些设置消失了

我在我的应用程序中使用内置设置和Im阅读设置以这种方式

variable = (bool)Settings.Default["GetHKAlt"];
Run Code Online (Sandbox Code Playgroud)

并以这种方式保存:

Settings.Default["GetHKAlt"] = variable;
Run Code Online (Sandbox Code Playgroud)

但是在我在运行时修改设置并关闭我的应用程序后,这些设置都消失了,这个网站说这个设置保存在app.config文件中,但是我在任何地方都看不到这个文件

.net c# settings

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

线程"main"中的异常java.lang.ArrayIndexOutOfBoundsException:?

import  javax.swing.*;
public class Main {

public static void main(String[] args) {
int r=0,c=0;

String input,inputt;
input = JOptionPane.showInputDialog("Plz Enter the number of Rows");
r = Integer.parseInt(input);

 input = JOptionPane.showInputDialog("Plz Enter the number of Coloms");
c = Integer.parseInt(input);

int array[][]= new int[r][c];
for (int i=0;i<=r;i++)
    {
        for (int j=0;j<=c;j++)
        input = JOptionPane.showInputDialog("Plz Enter the elemet of the array");
        array [r][c]= Integer.parseInt(input);
    }


}
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用JOption声明2d数组

java

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